N=int(input()) D={};E=[] for i in range(N): x,y=map(int, input().split()) if y not in D: E.append(y) D[y]=[] D[y].append([x,i+1]) ans=[];f=0 E=sorted(E)[::-1] F=[] from collections import deque d=deque() for e in E: A=D[e] A=sorted(A)[::-1] for a,b in A: d.append((a,b)) s=len(d)//2 for i in range(s): _,x=d.popleft() _,y=d.popleft() ans.append((x,y)) print(len(ans)) for x,y in ans: print(x,y)