#include <cstdio>
#include <vector>
#include <stack>
#include <algorithm>
using namespace std;

typedef long long ll;

const int N = 200005;

inline ll xmult(ll x1, ll y1, ll x2, ll y2) {
    return x1*y2-x2*y1;
}

int n, ma[N];
ll m[N], v[N], sm[N], sv[N];
vector<int> st;

bool cmp1(ll a, ll b) { return a >= b; }
bool cmp2(ll a, ll b) { return a <= b; }

void gao(int i, ll sm, ll sv, bool (*cmp)(ll, ll)) {
	while(st.size() > 1) {
		int x = st[st.size()-1];
		int y = st[st.size()-2];
		ll dm = m[y] - m[x];
		ll dv = v[y] - v[x];
		if(cmp(xmult(dv, dm, sv, sm), 0)) {
			st.pop_back();
		} else {
			break;
		}
	}
	if(st.empty()) {
		st.push_back(i);
	} else {
		int x = st.back();
		ll m1 = m[i] - m[x];
		ll v1 = v[i] - v[x];
		bool addi = true, popx = false;
		if(!cmp(xmult(v1, m1, sv, sm), 0)) {
			st.pop_back();
			popx = true;
			if(!st.empty()) {
				int y = st.back();
				ll m2 = m[y] - m[x];
				ll v2 = v[y] - v[x];
				if(cmp(xmult(v1, m1, v2, m2), 0)) {
					addi = false;
				}
			}
		}
		if(addi) {
			while(st.size() > 1) {
				int x = st[st.size()-1];
				int y = st[st.size()-2];
				ll mx = m[x] - m[i];
				ll vx = v[x] - v[i];
				ll my = m[y] - m[i];
				ll vy = v[y] - v[i];
				if(cmp(xmult(vx, mx, vy, my), 0)) {
					st.pop_back();
				} else {
					break;
				}
			}
			st.push_back(i);
		}
		if(popx) st.push_back(x);
	}
}

int main() {
    while(1==scanf("%d", &n) && n) {
        for(int mi, vi, i = 0; i < n; ++i) {
            scanf("%d%d", &mi, &vi);
            m[i] = mi; v[i] = vi;
        }
        if(n <= 2) {
            puts("0");
            continue;
        }
		st.clear();
        sm[n] = sv[n] = 0;
        for(int i = n-1; i >= 0; --i) {
            sm[i] = sm[i+1] + m[i];
            sv[i] = sv[i+1] + v[i];
            gao(i, sm[i], sv[i], cmp1);
            ma[i] = st.back();
        }
        st.clear();
        vector<int> ans;
        for(int i = 0; i < n-1; ++i) {
            gao(i, sm[i+1], sv[i+1], cmp2);
            int mi = st.back();
            ll dm = m[ma[i+1]] - m[mi];
            ll dv = v[ma[i+1]] - v[mi];
            if(xmult(dv, dm, sv[i+1], sm[i+1]) > 0) {
                ans.push_back(i+1);
            }
        }
        printf("%d\n", ans.size());
        for(size_t i = 0; i < ans.size(); ++i) {
            printf("%d\n", ans[i]);
        }
    }
}
