m=1000 t=50 id=-1 def g(): global id id+=1 return id e=[] rs=[] for _ in range(m): i=g();rs+=[i] for _ in range(t):j,k=g(),g();e+=[(i,j),(j,k)] while len(rs)>1: nrs=[] for l in range(0,len(rs),t-2): r=min(len(rs),l+t-2) p=g();nrs+=[p] for i in rs[l:r]:e+=[(p,i)] rs=nrs n=g() assert len(e)==n-1 print(n) for u,v in e:print(u+1,v+1)