桃北食堂的花样越来越多。某人也不甘示弱,因为他是画饼大师。
本题中讨论的无向图都是简单无向图。
在无向图中,对于三个不同的顶点 i,j,k(i<j<k)i,j,k (i<j<k)i,j,k(i<j<k),如果 i,ji,ji,j 之间、j,kj,kj,k 之间,k,ik,ik,i 之间都有边,那么我们称 i,j,ki,j,ki,j,k 构成一个三元环。
我们称一张恰好有 kkk 个三元环的无向图为 k−k-k−饼。
现在请你构造一个 k−k-k−饼。输入的 kkk 满足 0≤k≤1050 \le k \le 10^50≤k≤105。由于倶乐部经费紧张,k−k-k−饼的顶点数目 nnn 需要满足 n≤500n \le 500n≤500。保证有解。
一行一个整数 kkk。
输出第一行一个正整数 nnn 表示 k−k-k−饼中点的个数 nnn。满足 1≤n≤5001 \le n \le 5001≤n≤500。
接下来输出你找到的 k−k-k−饼的上三角邻接矩阵。格式如下:
该部分一共输出 n−1n-1n−1 行,其中第 iii 行共 n−in-in−i 个数,第 iii 行第 jjj 个数表示点 iii 和点 i+ji+ji+j 是否有边,只能为 000 或 111,为 111 表示有边,为 000 表示没有。
样例输入
3
样例输出
5 1 0 1 0 1 1 1 0 1 1