import sys input = lambda :sys.stdin.readline()[:-1] ni = lambda :int(input()) na = lambda :list(map(int,input().split())) yes = lambda :print("yes");Yes = lambda :print("Yes");YES = lambda : print("YES") no = lambda :print("no");No = lambda :print("No");NO = lambda : print("NO") ####################################################################### mod = 998244353 n = 30 p = list(range(1, n+1)) ans = 0 from random import randint a = [randint(1, 10) for i in range(n)] #print(a) b = [0] * n for i in range(n): print(2, flush=True) print(*p, flush=True) b = [b[j] + sum(a[p[i]-1]*pow(j+1, i, mod) for i in range(n)) for j in range(n)] p = p[1:] + [p[0]] #print(b) for i in range(1, n+1): for j in range(n): ans += pow(i, j, mod) ans %= mod x = pow(ans, mod-2, mod) for i in range(n): print(4, flush=True) print(i+1, x, flush=True) b[i] = (b[i] * x) % mod #print(sum(a), sum(b) % mod)