T,R=map(int,input().split()) t=0 N=5400 p=[-1]*(N+1) tick=[-1]*(N+1) s=set() # スキル値, プレイヤーi, 出現チック s.add((-10000000,-1,-1)) s.add((100000000,-1,-1)) pi=1 t_ans=set() fist=True _pl=set() used=set() import bisect while t<3600 : L=list(map(int,input().split())) # if nowtime - stime >4.85: # t+=1 # print(0) # sys.stdout.flush() # continue if fist == True and L[0]>3: # t+=1 # print(0) # continue for i in range(L[0]-1): _pl.add(pi) pi+=1 print(1) used.add(_pl.pop()) used.add(_pl.pop()) fist=False t+=1 print(*list(used)[:2]) continue elif fist == False and len(_pl)>0: print(1) lss=[] p=used.pop() pp=_pl.pop() lss.append(p) lss.append(pp) used.add(p) used.add(pp) t+=1 print(*lss) continue else: t+=1 print(0) continue