import java.io.OutputStream; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.util.InputMismatchException; import java.io.IOException; import java.io.InputStream; import java.util.*; /** * Built using CHelper plug-in * Actual solution is at the top * * @author George Marcus */ public class prog { public static void main(String[] args) { InputStream inputStream = System.in; OutputStream outputStream = System.out; InputReader in = new InputReader(inputStream); PrintWriter out = new PrintWriter(outputStream); Grey solver = new Grey(); solver.solve(1, in, out); out.close(); } static class Grey { public void solve(int testNumber, InputReader in, PrintWriter out) { Scanner scan = new Scanner(System.in); int N = scan.nextInt(); int[] ans = new int[1 << N]; ans[1] = 1; for (int i = 1; i < N; i++) { int crtSize = 1 << i; for (int j = 0; j < crtSize; j++) { ans[2 * crtSize - 1 - j] = ans[j]; } for (int j = crtSize; j < 2 * crtSize; j++) { ans[j] |= 1 << i; } } for (int i = 0; i < (1 << N); i++) { String str = Integer.toBinaryString(ans[i]); if (str.length() < N) { StringBuilder sb = new StringBuilder(); int count = N - str.length(); while (count-- > 0) { sb.append('0'); } str = sb.toString() + str; } out.println(str); } } } static class InputReader { private InputStream stream; private byte[] buf = new byte[1024]; private int curChar; private int numChars; private SpaceCharFilter filter; public InputReader(InputStream stream) { this.stream = stream; } public int read() { if (numChars == -1) throw new InputMismatchException(); if (curChar >= numChars) { curChar = 0; try { numChars = stream.read(buf); } catch (IOException e) { throw new InputMismatchException(); } if (numChars <= 0) return -1; } return buf[curChar++]; } public int readInt() { int c = read(); while (isSpaceChar(c)) c = read(); int sgn = 1; if (c == '-') { sgn = -1; c = read(); } int res = 0; do { if (c < '0' || c > '9') throw new InputMismatchException(); res *= 10; res += c - '0'; c = read(); } while (!isSpaceChar(c)); return res * sgn; } public boolean isSpaceChar(int c) { if (filter != null) return filter.isSpaceChar(c); return isWhitespace(c); } public static boolean isWhitespace(int c) { return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1; } public interface SpaceCharFilter { public boolean isSpaceChar(int ch); } } }