H, W = map(int, input().split()) ans = 0 grid = [] if H % 2 == 0 and W % 2 == 0: ans = H * W grid = [[1] * W for _ in range(H)] elif H % 2 == 0 and W % 2 == 1: ans = H * (W - 1) grid = [] for _ in range(H): row = [1] * (W - 1) + [0] grid.append(row) elif H % 2 == 1 and W % 2 == 0: ans = (H - 1) * W grid = [[1] * W for _ in range(H - 1)] + [[0] * W] else: ans = H * W - 1 grid = [[1] * W for _ in range(H)] grid[-1][-1] = 0 print(ans) for row in grid: print(' '.join(map(str, row)))