from __future__ import annotations import sys sys.setrecursionlimit(2*10**7) #↓codon=============================== import string Alp_low=list(string.ascii_lowercase) Alp_up=list(string.ascii_uppercase) Digit="0123456789" dij=[[0,1],[1,0],[0,-1],[-1,0]] def nin(): return list(map(int,input().split())) def deq(x): return [i-1 for i in x] mod=998244353 _factorial=[1] def factorial(n): while len(_factorial)<=n: _factorial.append((_factorial[-1]*len(_factorial))%mod) return _factorial[n] _inv_factorial=[1] def inv_factorial(n): while len(_inv_factorial)<=n: _inv_factorial.append((_inv_factorial[-1]*pow(len(_inv_factorial),mod-2,mod))%mod) return _inv_factorial[n] def binom(n,r): if r>=mod: raise ValueError("r is too big") if n<0: return 0 if r>n: return 0 if r<0: return 0 ans=((factorial(n)*inv_factorial(r))%mod*inv_factorial(n-r))%mod return ans def floyd_warshall(n, edges): dist = [[0 if i == j else float("inf") for i in range(n)] for j in range(n)] pred = [[None] * n for _ in range(n)] for u, v, d in edges: dist[u][v] = d pred[u][v] = u for k in range(n): for i in range(n): for j in range(n): if dist[i][k] + dist[k][j] < dist[i][j]: dist[i][j] = dist[i][k] + dist[k][j] pred[i][j] = pred[k][j] """Sanity Check for u, v, d in edges: if dist[u] + d < dist[v]: return None """ return dist, pred import random random.seed(0) def main(): ans=[[], [], [[[286929], [132029]], [[116404, 258784]]], [[[10717, 158778], [268620, 88409], [183571, 62780]], [[75150, 150759, 124012], [282186, 148188, 106784]]], [[[156699, 82239, 256712], [273018, 166408, 276198], [90764, 241945, 288705], [146650, 174883, 27325]], [[38552, 38684, 25719, 198840], [72756, 231718, 191061, 40754], [26806, 19826, 221888, 98389]]], [[[105166, 92589, 205669, 172666], [294402, 75580, 274716, 3684], [285278, 233604, 268957, 200880], [153012, 295385, 70916, 95804], [16981, 53809, 177685, 64139]], [[135673, 196812, 58127, 148297, 137993], [162597, 16797, 171306, 25300, 237667], [121312, 280771, 215575, 300, 197077], [281670, 99161, 242113, 231217, 296148]]]] n,=nin() for i in ans[n][1]: print(*i) for i in ans[n][0]: print(*i) return ans=[[],[]] use=[i for i in range(1,3*10**5) if i.bit_count()<=10] for n in range(2,6): while True: g=[] v=[[] for _ in range(n)] h=[[] for _ in range(n-1)] for i in range(n): for j in range(n): for di,dj in [(0,1),(1,0)]: if 0<=i+di