Vasya has his favourite number $n$. He wants to split it to some non-zero digits. It means, that he wants to choose some digits $d_1, d_2, \ldots, d_k$, such that $1 \leq d_i \leq 9$ for all $i$ and $d_1 + d_2 + \ldots + d_k = n$.

Vasya likes beauty in everything, so he wants to find any solution with the minimal possible number of different digits among $d_1, d_2, \ldots, d_k$. Help him!


-----Input-----

The first line contains a single integer $n$ — the number that Vasya wants to split ($1 \leq n \leq 1000$).


-----Output-----

In the first line print one integer $k$ — the number of digits in the partition. Note that $k$ must satisfy the inequality $1 \leq k \leq n$. In the next line print $k$ digits $d_1, d_2, \ldots, d_k$ separated by spaces. All digits must satisfy the inequalities $1 \leq d_i \leq 9$.

You should find a partition of $n$ in which the number of different digits among $d_1, d_2, \ldots, d_k$ will be minimal possible among all partitions of $n$ into non-zero digits. Among such partitions, it is allowed to find any. It is guaranteed that there exists at least one partition of the number $n$ into digits.


-----Examples-----
Input
1

Output
1
1 
Input
4

Output
2
2 2

Input
27

Output
3
9 9 9



-----Note-----

In the first test, the number $1$ can be divided into $1$ digit equal to $1$.

In the second test, there are $3$ partitions of the number $4$ into digits in which the number of different digits is $1$. This partitions are $[1, 1, 1, 1]$, $[2, 2]$ and $[4]$. Any of these partitions can be found. And, for example, dividing the number $4$ to the digits $[1, 1, 2]$ isn't an answer, because it has $2$ different digits, that isn't the minimum possible number.

Difficulty: EASY

Solutions:
n = int(input())
a = [1] * n
print(n)
print(*a)


N = int(input())
print(N)
print(*[1] * N)


def int_lst_input():
	return [int(val) for val in input().split()]

def int_input():
	return int(input())

def print_lst(lst):
	print(' '.join([str(val) for val in lst]))

def solve():
	n = int_input()
	print(n)
	print(' '.join(['1' for _ in range(n)]))
solve()


n = int(input())
print(n)
ans = [1] * n
print(*ans)


def answer():
	a = int(input())
	print(a)
	print('1 ' * (a - 1) + '1')
answer()


from sys import stdin, stdout
from math import sin, tan, cos, pi, atan2, sqrt, acos, atan, factorial
from random import randint

def solution(n):
	for i in range(1, 10):
		if n % i == 0:
			stdout.write(str(n // i) + '\n')
			for j in range(n // i):
				stdout.write(str(i) + ' ')
			break
	else:
		stdout.write(str(n // 9 + 1) + '\n')
		for j in range(n // 9):
			stdout.write(str(9) + ' ')
		stdout.write(str(n % 9))
n = int(stdin.readline())
solution(n)


n = int(input())
print(n)
while n != 0:
	print(1, end=' ')
	n = n - 1


i = int(input())
print(i)
print('1 ' * i)


n = int(input())
print(f"{n}\n{'1 ' * n}")


n = int(input())
print(n)
print('1', end='')
print(' 1' * (n - 1))


n = int(input())
print(str(n))
print(*['1' for i in range(n)], sep=' ')


n = int(input())
lst = ['1'] * n
print(n)
print(' '.join(lst))


n = int(input())
print(n)
k = [1] * n
print(*k)


import math
import bisect
import itertools
import sys
I = lambda : sys.stdin.readline()
mod = 10 ** 9 + 7

def mindiff(a):
	b = a[:]
	b.sort()
	m = 10000000000
	for i in range(len(b) - 1):
		if b[i + 1] - b[i] < m:
			m = b[i + 1] - b[i]
	return m

def lcm(a, b):
	return a * b // math.gcd(a, b)

def merge(a, b):
	i = 0
	j = 0
	c = 0
	ans = []
	while i < len(a) and j < len(b):
		if a[i] < b[j]:
			ans.append(a[i])
			i += 1
		else:
			ans.append(b[j])
			c += len(a) - i
			j += 1
	ans += a[i:]
	ans += b[j:]
	return (ans, c)

def mergesort(a):
	if len(a) == 1:
		return (a, 0)
	mid = len(a) // 2
	(left, left_inversion) = mergesort(a[:mid])
	(right, right_inversion) = mergesort(a[mid:])
	(m, c) = merge(left, right)
	c += left_inversion + right_inversion
	return (m, c)

def is_prime(num):
	if num == 1:
		return False
	if num == 2:
		return True
	if num == 3:
		return True
	if num % 2 == 0:
		return False
	if num % 3 == 0:
		return False
	t = 5
	a = 2
	while t <= int(math.sqrt(num)):
		if num % t == 0:
			return False
		t += a
		a = 6 - a
	return True

def ceil(a, b):
	if a % b == 0:
		return a // b
	else:
		return a // b + 1

def binsearch(arr, b, low, high):
	if low == high:
		return low
	if arr[math.ceil((low + high) / 2)] < b:
		return binsearch(arr, b, low, math.ceil((low + high) / 2) - 1)
	else:
		return binsearch(arr, b, math.ceil((low + high) / 2), high)

def ncr1(n, r):
	s = 1
	for i in range(min(n - r, r)):
		s *= n - i
		s %= mod
		s *= pow(i + 1, mod - 2, mod)
		s %= mod
	return s

def calc(n, m, r):
	s = 0
	for i in range(0, r + 1, 2):
		s += ncr1(n, i) * ncr1(m, i)
		s %= mod
	return s
n = int(input())
print(n)
print('1 ' * n)


n = int(input())
print(n)
for i in range(n):
	print(1, end=' ')


n = int(input())
print(n)
ls = [1] * n
print(*ls)


x = int(input())
print(x)
res = [1 for i in range(x)]
print(*res)


e = int(input())
print(e)
print('1 ' * e)


n = int(input())
print(n)
X = ['1'] * n
print(' '.join(X))


def main():
	n = int(input())
	print(n)
	for i in range(n):
		print(str(1) + ' ', end='')
	print()
main()


n = int(input())
if n < 9:
	print(1)
	print(n % 9)
else:
	l = [1] * n
	print(n)
	print(' '.join(map(str, l)))


n = int(input())
print(n)
res = [1] * n
print(' '.join(map(str, res)))


a = int(input())
print(str(a))
while a > 0:
	print(1, end=' ')
	a -= 1


n = int(input())
print(n)
for item in [1] * n:
	print(item, end=' ')
print('')


N = int(input())
Max = 0
for i in range(N, 0, -1):
	if N % i == 0:
		Max = i
		break
print(N)
print('1 ' * N)


a = int(input())
l = ''
print(a)
for i in range(a):
	l += str(1) + ' '
print(l[:-1])


num = int(input())
print(num)
for i in range(num):
	print(1, end=' ')
print('')


n = int(input())
print(n)
print(' '.join(('1' for _ in range(n))))


a = int(input())
print(a)
i = 0
while i < a:
	print('1', end=' ')
	i += 1


num = int(input())
array = []
print(num)
for _ in range(num):
	array.append(1)
print(*array, sep=' ')


import math, sys, itertools
from fractions import *

def mp():
	return list(map(int, input().split()))

def main():
	input = sys.stdin.readline
	n = int(input())
	print(n)
	print('1 ' * n)
main()


n = int(input())
print(n)
ans = ' '.join(('1' for i in range(n)))
print(ans)


n = int(input())
arr = []
for i in range(n):
	arr.append(1)
print(n)
print(*arr)


def get():
	return list(map(int, input().split()))
n = int(input())
a = n * [1]
print(n)
print(*a)


n = int(input())
print(n)
x = [1] * n
print(*x)


n = int(input())
print(n)
for _ in range(1, n):
	print('1 ', end='')
print(1)


def imprime(x):
	for i in range(len(x)):
		print(x[i], end=' ')
	print()
n = int(input())
d = [[]] * 9
for i in range(1, 10):
	k = 0
	j = i - 1
	m = n // i
	for x in range(m):
		d[j] = [i] * m
count = [0] * 9
for i in range(9):
	t = sum(d[i])
	count[i] = 1
	if n > t:
		count[i] += 1
		d[i].append(n - sum(d[i]))
minimo = min(count)
for i in range(9):
	if count[i] == minimo:
		print(len(d[i]))
		imprime(d[i])
		break


import sys
inf = float('inf')
mod = 1000000007

def get_array():
	return list(map(int, sys.stdin.readline().split()))

def get_ints():
	return map(int, sys.stdin.readline().split())

def input():
	return sys.stdin.readline()

def main():
	n = int(input())
	print(n)
	ans = [1] * n
	print(*ans)
main()


inp = int(input())
print(inp)
for i in range(inp):
	print(1, end=' ')


n = int(input())
print(n)
s = '1 ' * n
s = s[:len(s) - 1]
print(s)


a = int(input())
print(a)
for i in range(0, a):
	print('1', end=' ')


n = int(input())
for i in range(1, 10):
	if n % i == 0:
		print(n // i)
		A = [i for k in range(n // i)]
		print(' '.join(map(str, A)))
		break
else:
	print(n // i + 1)
	A = [9 for k in range(n // 9)]
	A.append(n % i)
	print(' '.join(map(str, A)))


n = int(input())
print(n)
for x in range(n):
	print(1, end=' ')


n = int(input())
x = ''
for i in range(n):
	x = x + '1 '
print(n)
print(x)


n = int(input())
a = [1] * n
print(n)
for i in a:
	print(i, end=' ')


n = int(input())
ans = [1] * n
print(len(ans))
print(*ans, sep=' ')


n = int(input())
print(n)
string = ''
for i in range(n):
	string += '1' + ' '
print(string)


a = int(input())
print(a, ' '.join(['1' for i in range(a)]), sep='\n')


a = int(input())
print(a)
arr = [1 for i in range(a)]
for i in arr:
	print(i, end=' ')


n = int(input())
print(n)
l = [1] * n
print(*l)


number = int(input())
print(number)
print('1 ' * number)


import sys
input = sys.stdin.readline
N = int(input())
L = [1] * N
print(N)
print(' '.join(map(str, L)))


n = int(input())
print(n)
t = '1 ' * n
print(t)


n = int(input())
if n == 1:
	print(1)
	print(1)
else:
	for i in range(1, int(n / 2) + 1):
		if n % i == 0:
			print(int(n / i))
			print((str(i) + ' ') * int(n / i))
			break


x = int(input())
print(x)
print('1 ' * x)


a = int(input())
print(a)
print(' '.join([str(1) for x in range(a)]))


n = int(input())
R = [1] * n
print(n)
print(' '.join(map(str, R)))


import math
from collections import Counter
L = lambda : list(map(int, input().split()))
M = lambda : map(int, input().split())
I = lambda : int(input())
IN = lambda : input()
mod = 10 ** 9 + 7

def s(a):
	print(' '.join(list(map(str, a))))
t = I()
if t <= 9:
	print(1)
	print(t)
else:
	print(t)
	print('1 ' * t)


n = int(input())
if n == 1:
	print(1)
	print(1)
else:
	print(n)
	for i in range(n):
		print(1, end=' ')
	print()


TN = 1

def solution():
	n = int(input())
	print(n)
	print('1 ' * n)
while TN != 0:
	solution()
	TN -= 1


from math import *
from collections import *

def inp():
	return map(int, input().split())

def inp_arr():
	return list(map(int, input().split()))
n = int(input())
print(n)
for i in range(n):
	print(1, end=' ')


t = 1
for _ in range(t):
	n = int(input())
	a = []
	for i in range(n):
		a.append(1)
	print(len(a))
	print(*a)


n = int(input())
array = [1] * n
print(n)
print(*array)


n = int(input())
s = 0
d = 0
print(n)
for i in range(n):
	print(1, end=' ')


import sys

def solution():
	result = 0
	number = int(input())
	result = [1] * number
	print(number)
	print(*result, sep=' ')
solution()


import sys
data = sys.stdin.read().splitlines()
n = int(data[0])
print(n)
print(' '.join(map(str, [1] * n)))


s = int(input())
print(s)
print(' '.join(map(str, [1] * s)))


nums = ['1' for x in range(int(input()))]
print(len(nums))
print(' '.join(nums))


n = int(input())
if n <= 9:
	print(1)
	print(n)
if n > 9:
	print(n)
	print('1 ' * n)


n = int(input())
print(n, n * '1 ', sep='\n')


def main():
	n = int(input())
	ret = [1] * n
	print(n)
	for x in ret:
		print(x, end=' ')
	print()
main()


n = int(input())
print(n)
print(('1 ' * n).strip())


num = int(input())
arr = [1] * num
print(num)
print(*arr, sep=' ')


n = int(input())
if 1 <= n <= 9:
	print(1)
	print(n)
else:
	flag = 0
	print(n)
	for i in range(n):
		print(1, end=' ')


num = int(input())
split = ['1'] * num
print(num)
print(' '.join(split))


import math
n = int(input())
ans = [1] * n
print(n)
print(' '.join(map(str, ans)))


import sys
import math

def read_int():
	return int(input().strip())

def read_int_list():
	return list(map(int, input().strip().split()))

def read_string():
	return input().strip()

def read_string_list(delim=' '):
	return input().strip().split(delim)
n = read_int()
print(n)
for i in range(n):
	print(1, end=' ')
print()


n = int(input())
print(n)
a = []
for i in range(n):
	a.append(1)
print(' '.join(map(str, a)))


n = int(input())
m = 9
ans = [1 for i in range(n)]
print(n)
print(*sorted(ans))


def razbienie(n):
	return [1] * n
m = int(input())
print(m)
print(*razbienie(m))


given = int(input())
print(given)
print(*[1] * given)


n = int(input())
consegui = 0
for i in range(9):
	if n % (i + 1) == 0:
		k = int(n / (i + 1))
		print(k)
		for a in range(k):
			print(i + 1, end=' ')
		consegui = 1
		break
if consegui == 0:
	k = int(n / 9)
	ultimo = n - 9 * k
	if ultimo != 0:
		print(k + 1)
	else:
		print(k)
	for i in range(k - 1):
		print(9, end=' ')
	if ultimo != 0:
		if k > 1:
			print(9, end=' ')
		print(ultimo)
	else:
		print(9)


k = int(input())
l = [1] * k
print(k)
for i in l[:-1]:
	print(i, end=' ')
print(l[-1])


t = int(input())
print(t)
a = []
for _ in range(t):
	a.append(1)
print(*a)


n = int(input())
print(n)
c = []
for i in range(n):
	c.append(1)
print(*c)


def main():
	c = int(input())
	print(c)
	print(' '.join(['1' for _ in range(c)]))
main()


n = int(input())
x = []
print(n)
z = '1' * n
print(' '.join(z))


a = int(input())
b = ''
for x in range(a):
	b += '1 '
print(a)
print(b[0:-1])


import sys
n = int(input())
for i in range(1, 10):
	if n % i == 0:
		print(n // i)
		print(' '.join([str(i)] * (n // i)))
		sys.exit(0)
print(n // 2 + 1)
partition = ['2'] * (n // 2) + ['1']
print(' '.join(partition))


def isPrime(n):
	if n <= 1:
		return False
	if n <= 3:
		return True
	if n % 2 == 0 or n % 3 == 0:
		return False
	i = 5
	while i * i <= n:
		if n % i == 0 or n % (i + 2) == 0:
			return False
		i = i + 6
	return True
n = int(input())
print(n)
ans = [1] * n
print(*ans)


def ii():
	return int(input())

def ss():
	return [x for x in input()]

def si():
	return [int(x) for x in input().split()]

def mi():
	return map(int, input().split())
a = ii()
print(a)
print(*[1 for _ in range(a)])


n = int(input())
print(n)
print(' '.join([str(1) for i in range(n)]))


import sys
inf = float('inf')

def get_array():
	return list(map(int, sys.stdin.readline().split()))

def get_ints():
	return map(int, sys.stdin.readline().split())

def input():
	return sys.stdin.readline()
n = int(input())
print(n)
print('1 ' * n)


n = int(input())
print(n)
arr = [1] * n
print(*arr)


n = int(input())
a = []
if n == 1:
	print(1)
	print(1)
elif n <= 9 and n > 1:
	print(1)
	print(n)
else:
	for j in range(1, 10):
		if n % j == 0:
			k = j
			break
		else:
			k = 9
	ki = n // k
	a = a + [k] * ki
	r = n - k * ki
	if r != 0:
		a = a + [r]
		print(len(a))
		for ji in a:
			print(ji, end=' ')
	else:
		print(len(a))
		for ji in a:
			print(ji, end=' ')


t = int(input())
ans = []
for i in range(t):
	ans.append(1)
print(t)
print(*ans)


n = int(input())
print(n)
kam = [1] * n
print(*kam)


q = int(input())
print(q)
for i in range(q):
	print(1, end=' ')


import copy
import itertools
import string

def powmod(x, p, m):
	if p <= 0:
		return 1
	if p <= 1:
		return x % m
	return powmod(x * x % m, p // 2, m) * (x % m) ** (p % 2) % m

def to_basex(num, x):
	while num > 0:
		yield (num % x)
		num //= x

def from_basex(it, x):
	ret = 0
	p = 1
	for d in it:
		ret += d * p
		p *= x
	return ret

def core():
	n = int(input())
	print(n)
	print(*(1 for _ in range(n)))
core()


x = int(input())
y = 1
an = []
c = 0
c = x // y
an = [1] * x
print(c)
print(*an, sep=' ')


n = int(input())
print(n)
s = ''
for i in range(n):
	s += '1 '
print(s)


a = int(input())
print(a)
print((str(1) + ' ') * a)


n = int(input())
print(n)
a = [1] * n
print(' '.join((str(x) for x in a)))


nn = int(input())
print(nn)
print(' '.join(['1' for i in range(nn)]))


n = int(input())
k = 0
od = -1
odj = -1
ans = []
for j in range(1, 10):
	if n // j > od:
		od = n // j
		odj = j
for i in range(od):
	ans.append(odj)
if n % (od * odj) != 0:
	ans.append(n - od * odj)
k = len(ans)
print(k)
for i in range(k):
	print(ans[i], end=' ')


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, random, time, copy, functools
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
eps = 1.0 / 10 ** 10
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def LF():
	return [float(x) for x in sys.stdin.readline().split()]

def LS():
	return sys.stdin.readline().split()

def I():
	return int(sys.stdin.readline())

def F():
	return float(sys.stdin.readline())

def S():
	return input()

def pf(s):
	return print(s, flush=True)

def main():
	n = I()
	return '{}\n{}'.format(n, ' '.join(['1'] * n))
print(main())


import sys
n = int(input())
re = [1] * n
print(n)
for x in re:
	sys.stdout.write(str(x) + ' ')


import math
x = int(input())
if x < 10:
	print(1)
	print(x)
else:
	print(x)
	for i in range(x):
		print(1, end='')
		if i == x - 1:
			print()
		else:
			print('', end=' ')


x = int(input().strip())
print(x)
print(' '.join(['1'] * x))


n = int(input())
ans = [1 for _ in range(n)]
print(len(ans))
print(*ans)


x = int(input())
(y, z) = (print(x), print(' '.join(['1' for _ in range(x)])))


n = int(input())
lis = []
for i in range(n):
	lis.append(1)
print(n)
for j in range(n):
	print(lis[j], end=' ')


n = int(input())
print(n)
a = [1] * n
print(' '.join(map(str, a)))


n = int(input())
arr = []
for i in range(10, 0, -1):
	if n % i == 0:
		a = n // i
		b = i
		arr = a * [b]
print(a)
[print(i, end=' ') for i in arr]


n = int(input())
num = [1] * n
print(n)
print(*num)


if 1:
	x = int(input())
	print(x)
	print('1 ' * x)


n = int(input())
print(n)
l = [1] * n
for i in l:
	print(i, end=' ')


from sys import stdin, stdout
from collections import defaultdict
import math
I = stdin.readline
P = stdout.write
n = int(I())
print(n)
print('1 ' * n)


n = int(input())
print('%i' % n)
s = '1 ' * n
print(s[0:2 * n - 1])


def rli():
	return list(map(int, input().split()))

def main():
	n = int(input())
	print(n)
	ans = ['1'] * n
	print(' '.join(ans))
main()


import math, string, itertools, fractions, heapq, collections, re, array, bisect, sys, random, time, queue, copy
sys.setrecursionlimit(10 ** 7)
inf = 10 ** 20
mod = 10 ** 9 + 7
dd = [(-1, 0), (0, 1), (1, 0), (0, -1)]
ddn = [(-1, 0), (-1, 1), (0, 1), (1, 1), (1, 0), (1, -1), (0, -1), (-1, -1)]

def LI():
	return [int(x) for x in sys.stdin.readline().split()]

def LI_():
	return [int(x) - 1 for x in sys.stdin.readline().split()]

def I():
	return int(sys.stdin.readline())

def LS():
	return sys.stdin.readline().split()

def S():
	return input()

def main():
	n = I()
	print(n)
	l = [1 for _ in range(n)]
	print(' '.join((str(x) for x in l)))
main()


def A():
	n = int(input())
	a = ['1'] * n
	print(n)
	print(' '.join(a))
A()


n = int(input())
L = ['1'] * n
print(n)
print(' '.join(L))


n = int(input())
part = ['1'] * n
print(n)
print(' '.join(part))


n = int(input())
print(n)
answer = [1] * n
print(str(answer).replace('[', '').replace(']', '').replace(',', ''))


s = int(input())
print(s)
for i in range(s):
	print(1, end=' ')


def split_digit(n):
	if n <= 9:
		return [n]
	result_val = [1] * n
	return result_val
n = int(input())
ls = split_digit(n)
print(len(ls))
temp_str = ''
for i in range(len(ls)):
	temp_str += str(ls[i]) + ' '
print(temp_str)


from sys import stdin, stdout
nmbr = lambda : int(stdin.readline())
lst = lambda : list(map(int, stdin.readline().split()))
for _ in range(1):
	n = nmbr()
	print(n)
	print(*[1] * n)


fav_number = int(input())
division = ['1'] * fav_number
print(fav_number)
print(' '.join(division))


def input_ints():
	return list(map(int, input().split()))

def main():
	n = int(input())
	print(n)
	print(' '.join(['1'] * n))
main()


def main():
	n = int(input())
	print(n)
	string = ''
	for _ in range(n):
		string += '1 '
	print(string)
main()


import sys
n = int(sys.stdin.readline().strip())
print(n)
print(('1 ' * n).strip())


from sys import stdin
n = int(stdin.readline().strip())
print(n)
sol = '1 ' * n
print(sol[:-1])


n = int(input())
if n <= 9:
	print(1)
	print(n)
else:
	print(n)
	print(' '.join(['1'] * n))


n = int(input())
print(n)
out = [1 for i in range(n)]
print(*out)


n = int(input())
for x in range(1, 10):
	if n % x == 0:
		k = n // x
		p = x
		break
else:
	k = n // 9
	p = 9
if n % x == 0:
	print(k)
	z = '{} '.format(p)
	print(z * k)
else:
	print(k + 1)
	print('{} '.format(p) * k + '{} '.format(n - k * p))


import getpass
import sys

def ria():
	return [int(i) for i in input().split()]
if getpass.getuser() != 'frohenk':
	filename = 'half'
else:
	sys.stdin = open('input.txt')
n = ria()[0]
print(n)
print('1 ' * n)


n = int(input())
cnt = 1
l = []
k = 9
while n > 0:
	l.append(1)
	n -= 1
print(len(l))
print(*l)


def solve(n):
	print(n)
	print(' '.join(map(str, [1] * n)))

def main():
	n = int(input())
	solve(n)
main()


n = int(input())
print(n)
s = ''
for x in range(n):
	s += str(1) + ' '
print(s)


n = int(input())
ll = ['1'] * n
print(n)
print(' '.join(ll))


from bisect import bisect_right as br
from bisect import bisect_left as bl
from collections import defaultdict
from itertools import combinations
import functools
import sys
import math
MAX = sys.maxsize
MAXN = 10 ** 6 + 10
MOD = 10 ** 9 + 7

def isprime(n):
	n = abs(int(n))
	if n < 2:
		return False
	if n == 2:
		return True
	if not n & 1:
		return False
	for x in range(3, int(n ** 0.5) + 1, 2):
		if n % x == 0:
			return False
	return True

def mhd(a, b, x, y):
	return abs(a - x) + abs(b - y)

def numIN():
	return map(int, sys.stdin.readline().strip().split())

def charIN():
	return sys.stdin.readline().strip().split()

def ncr(n, k):
	res = 1
	c = [0] * (k + 1)
	c[0] = 1
	for i in range(1, n + 1):
		for j in range(min(i, k), 0, -1):
			c[j] = (c[j] + c[j - 1]) % MOD
	return c[k]
n = int(input())
x = [1] * n
print(n)
print(*x)


t = int(input())
print(t)
for _ in range(0, t):
	print('1', end=' ')


k = int(input())
l = list()
for i in range(1, 10):
	if k // i != 0:
		for j in range(1, k // i + 1):
			l.append(i)
	k = k % i
print(len(l))
for i in l:
	print(i, end=' ')


systemIn = int(input())
print(systemIn)
digits = ''
for i in range(systemIn):
	if i == systemIn - 1:
		digits += '1'
	else:
		digits += '1 '
print(digits)


from collections import Counter
import math
n = int(input())
print(n)
for i in range(n):
	print('1', end=' ')


N = int(input())
print(N)
for i in range(N):
	print('1', end=' ')


def main():
	n = int(input())
	print(str(n) + '\n' + ' '.join(['1'] * n))
main()


def ans(n):
	return [1] * n
n = int(input())
result = ans(n)
print(len(result))
print(*result)


n = int(input())
print('%d\n1' % n, end='')
for i in range(n - 1):
	print(' 1', end='')
print()


n = int(input())
print(n)
d = [1 for _ in range(n)]
print(*d)


import sys
n = int(sys.stdin.readline())
print(n)
for _ in range(n - 1):
	print(1, end=' ')
print(1)


numero = int(input())
a = 1000
while numero % a != 0:
	a -= 1
print(a)
print((str(numero // a) + ' ') * a)


n = int(input())
if n < 9:
	print(1)
	print(n)
else:
	l = [1] * n
	print(n)
	print(*l)


import math
mod = 1000000007
n = int(input())
f = 0
print(n)
for i in range(n):
	print('1', end=' ')


n = int(input())
a = []
x = n
for i in range(x):
	a.append(1)
y = len(a)
print(len(a))
for j in range(y):
	print(a[j], end=' ')


n = int(input())
count = n // 9
s = abs(n - count * 9)
if n <= 8:
	print(n)
	i = 0
	while i < n:
		print(1, end=' ')
		i += 1
else:
	print(n)
	i = 0
	while i < n:
		print(1, end=' ')
		i += 1


n = int(input())
z = str(1) * n
print(n)
for c in z:
	print(c, end=' ')


import math

def ii():
	return int(input())

def mi():
	return map(int, input().split())

def li():
	return list(mi())
n = ii()
print(n)
print('1 ' * n)


n = int(input())
print(n)
ans = ''
for x in range(n):
	ans += '1 '
print(ans)


n = int(input())
l1 = ['1'] * n
print(n)
print(' '.join(l1))


x = int(input())
if x <= 9:
	print(1)
	print(x)
else:
	print(x)
	print(('1 ' * x).strip())


def fastio():
	import sys
	from io import StringIO
	from atexit import register
	global input
	sys.stdin = StringIO(sys.stdin.read())
	input = lambda : sys.stdin.readline().rstrip('\r\n')
	sys.stdout = StringIO()
	register(lambda : sys.__stdout__.write(sys.stdout.getvalue()))
fastio()
MOD = 10 ** 9 + 7
I = lambda : list(map(int, input().split()))
(n,) = I()
print(n)
print('1 ' * n)


n = int(input())
print(n)
q = ['1'] * n
print(' '.join(q))


def solve():
	n = int(input())
	return (n, [1] * n)
(a1, res) = solve()
print(a1)
print(*res)


n = int(input())
print(n)
print(' '.join(list('1' * n)))


n = int(input())
result = [1 for _ in range(n)]
print(len(result), ' '.join(map(str, result)), sep='\n')


def main():
	n = int(input())
	if n <= 9:
		print(1)
		print(n)
	else:
		arr = [1] * n
		print(len(arr))
		for i in arr:
			print(i, end=' ')
main()


t = int(input())
if t <= 9:
	print(1)
	print(t)
else:
	print(t)
	print('1 ' * t)


a = int(input())
print(a)
b = []
for _ in range(a):
	b.append(1)
print(*b)


n = int(input())
l = 0
for i in range(1, 10):
	if n % i == 0:
		l = i
		break
print(n // l)
for i in range(n // l):
	print(l, end=' ')


n = int(input())
a = []
for _ in range(n):
	a.append(1)
print(n)
print(*a, sep=' ')


n = int(input())
print(n)
l = [1] * n
print(' '.join(map(str, l)))


num = int(input())
print(num)
print('1 ' * num)


n = int(input())
print(n)
print('{} '.format(1) * n)


def io():
	return map(int, input().split())

def op():
	return list(map(int, input().split()))
n = int(input())
print(n)
for i in range(n):
	print(1, end=' ')


x = int(input())
if x < 9:
	print(1)
	print(x % 9)
else:
	c = [1] * x
	print(x)
	print(' '.join(map(str, c)))


import sys
import math
get_string = lambda : sys.stdin.readline().strip()
get_list = lambda : list(map(int, sys.stdin.readline().strip().split()))
get_intList_from_str = lambda : list(map(int, list(sys.stdin.readline().strip())))
get_charList_from_str = lambda : list(sys.stdin.readline().strip())
get_int = lambda : int(sys.stdin.readline().strip())
pt = lambda x: sys.stdout.write(str(x))
n = get_int()
print(n)
print(*[1] * n)


t = int(input())
k = [1] * t
print(t)
print(*k)


import sys
n = int(sys.stdin.readline()[:-1])
print(n)
print(' '.join([str(1) for i in range(n)]))


N = int(input())
print(N)
S = ''
for i in range(N):
	S += '1 '
print(S)


import math
n = int(input())
a = []
for i in range(n):
	a.append(1)
print(n)
print(*a)


n = int(input())
ans = 0
ans1 = []
kek = []
for i in range(1, n + 1):
	if n % i == 0:
		ans1.append(i)
for i in range(n // ans1[0]):
	kek.append(ans1[0])
print(len(kek))
for i in kek:
	print(i, end=' ')


num = int(input())
print(num)
print((str(1) + ' ') * num)


t = int(input())
print(t)
print('1 ' * t)


n = int(input())
for i in range(1, 10):
	if n % i == 0:
		print(n // i)
		ans = [i for j in range(n // i)]
		print(' '.join(map(str, ans)))
		exit(0)
ans = [9 for i in range(n // i)]
ans.append(n % 9)
print(' '.join(map(str, ans)))


from sys import stdin, stdout
import math
n = int(input())
print(n)
for i in range(n):
	print(1, end=' ')


import sys
input = sys.stdin.readline
ins = lambda : input().rstrip()
ini = lambda : int(input().rstrip())
inm = lambda : map(int, input().rstrip().split())
inl = lambda : list(map(int, input().split()))
out = lambda x, s='\n': print(s.join(map(str, x)))
n = ini()
print(n)
out([1] * n, ' ')


t = int(input())
s = ''
print(t)
for i in range(t):
	s += '1 '
s.strip()
print(s)


n = int(input())
answer = []
for i in range(n):
	answer.append(1)
print(n)
print(str(answer).replace('[', '').replace(']', '').replace(',', ''))


from math import ceil

def ii():
	return int(input())

def si():
	return input()

def mi():
	return map(int, input().strip().split(' '))

def li():
	return list(mi())
t = ii()
print(t)
for i in range(t):
	print('1', end=' ')


k = int(input())
print(k)
print('1 ' * k)


n = int(input())
tot = ''
for item in range(n):
	tot += '1' + ' '
print(n)
print(tot[:-1])


n = eval(input())
print(n)
for i in range(n):
	print(1, end=' ')


__author__ = 'Dilshod'
n = int(input())
print(n)
a = [1] * n
print(*a, sep=' ')


k = int(input())
m = 0
print(k)
for i in range(k):
	print('1', end=' ')


import sys
input = sys.stdin.readline
from math import log2, log, ceil

def swaparr(arr, a, b):
	temp = arr[a]
	arr[a] = arr[b]
	arr[b] = temp

def gcd(a, b):
	if a == 0:
		return b
	return gcd(b % a, a)

def nCr(n, k):
	if k > n - k:
		k = n - k
	res = 1
	for i in range(k):
		res = res * (n - i)
		res = res / (i + 1)
	return res

def upper_bound(a, x, lo=0):
	hi = len(a)
	while lo < hi:
		mid = (lo + hi) // 2
		if a[mid] < x:
			lo = mid + 1
		else:
			hi = mid
	return lo

def primefs(n):
	primes = {}
	while n % 2 == 0:
		primes[2] = primes.get(2, 0) + 1
		n = n // 2
	for i in range(3, int(n ** 0.5) + 2, 2):
		while n % i == 0:
			primes[i] = primes.get(i, 0) + 1
			n = n // i
	if n > 2:
		primes[n] = primes.get(n, 0) + 1
	return primes

def power(x, y, p):
	res = 1
	x = x % p
	if x == 0:
		return 0
	while y > 0:
		if y & 1 == 1:
			res = res * x % p
		y = y >> 1
		x = x * x % p
	return res

def swap(a, b):
	temp = a
	a = b
	b = temp
	return (a, b)

def find(x, link):
	while x != link[x]:
		x = link[x]
	return x

def union(x, y, size, link):
	x = find(x, link)
	y = find(y, link)
	if size[x] < size[y]:
		(x, y) = swap(x, y)
	if x != y:
		size[x] += size[y]
		link[y] = x

def sieve(n):
	prime = [True for i in range(n + 1)]
	p = 2
	while p * p <= n:
		if prime[p] == True:
			for i in range(p * p, n + 1, p):
				prime[i] = False
		p += 1
	return prime
MAXN = int(1000000.0 + 5)

def spf_sieve():
	spf[1] = 1
	for i in range(2, MAXN):
		spf[i] = i
	for i in range(4, MAXN, 2):
		spf[i] = 2
	for i in range(3, ceil(MAXN ** 0.5), 2):
		if spf[i] == i:
			for j in range(i * i, MAXN, i):
				if spf[j] == j:
					spf[j] = i

def factoriazation(x):
	ret = {}
	while x != 1:
		ret[spf[x]] = ret.get(spf[x], 0) + 1
		x = x // spf[x]
	return ret

def int_array():
	return list(map(int, input().strip().split()))

def str_array():
	return input().strip().split()
MOD = int(1000000000.0) + 7
CMOD = 998244353
INF = float('inf')
NINF = -float('inf')
n = int(input())
print(n)
print(*[1] * n)


import math
import os
import random
import re
import sys
n = int(input())
(c, mi) = (0, 1000000)
ind = 0
l = [0] * 11
l = [0] * 11
for i in range(1, 10):
	c = n // i
	if n % i == 0:
		mi = c
		ind = i
		break
	if n % i != 0:
		c += 1
		l[i] = 1
	if c < mi:
		mi = c
		ind = i
print(mi)
for i in range(mi):
	if i == 0 and l[ind] == 1:
		print(n % ind, end=' ')
	else:
		print(ind, end=' ')


n = int(input())
r = []
for i in range(n):
	r.append(1)
r = list(map(str, r))
print(len(r))
print(' '.join(r))


import sys
import heapq
import math
lines = sys.stdin.read().splitlines()
n = [int(x) for x in lines[0].split(' ')][0]
print(n)
for i in range(0, n):
	print(1, end=' ' if i < n - 1 else '\n')


n = int(input())
min = 10 ** 9
if n < 10:
	print(1)
	print(n)
else:
	for i in range(1, 10):
		if n % i == 0:
			print(n // i)
			for j in range(n // i):
				print(i, end=' ')
			quit()
	print(n // 9 + 1)
	for i in range(n // 9):
		print(9, end=' ')
	print(n % 9)


n = int(input())
a = [1]
k = a * n
print(len(k))
for i in k:
	print(i, end=' ')


def split1(n):
	print(n)
	while n:
		print(1, end=' ')
		n -= 1
n = int(input())
split1(n)


import sys

def main():
	fin = sys.stdin
	n = int(fin.readline().strip())
	print(n)
	print(' '.join(['1' for i in range(n)]))
main()


import re, math, decimal, bisect

def read():
	return input().strip()

def iread():
	return int(input().strip())

def viread():
	return [int(_) for _ in input().strip().split()]
n = iread()
print(n)
print(*[1] * n)


a = int(input())
l = '1 ' * a
print(a)
print(l)


n = int(input())
print(n)
lst = [1] * n
print(' '.join((str(item) for item in lst)))


l1 = input()
l1 = int(l1)
print(l1)
for i in range(l1):
	print('1 ', end='')


n = int(input())
print(n)
for g in range(0, n):
	print(1, end=' ')


n = int(input())
print(n)
str_out = ''
for i in range(n):
	str_out += '1'
	if i != n - 1:
		str_out += ' '
print(str_out)


u = int(input())
g = 1
print(u)
for j in range(u):
	print(1, end=' ')


n = int(input())
print(n)
ans = []
for i in range(n):
	ans.append(1)
print(*ans)


def split_problem():
	num = eval(input())
	print(num)
	for i in range(num):
		print('1 ', end='')
	print()
	return
split_problem()


from math import *
import sys, random

def nextInt():
	return int(input())

def nextStrs():
	return input().split()

def nextInts():
	return list(map(int, nextStrs()))

def main():
	n = nextInt()
	print(n)
	for i in range(n):
		print(1, end=' ')
exit(main())


n = int(input())
print(n)
sol = ''
for i in range(n):
	sol += '1 '
print(sol)


n = int(input())
arr = [1] * n
print(n)
for i in arr:
	print(i, end=' ')


def main():
	n = int(input())
	st = ''
	print(n)
	for i in range(n):
		st = st + '1 '
	print(st)
main()