from collections import defaultdict, deque, Counter
from heapq import heappush, heappop, heapify
import math
from bisect import bisect_left, bisect_right
import random
from itertools import permutations, accumulate, combinations
import sys
import string



INF = float('inf')
def LI(): return list(map(int, sys.stdin.readline().split()))
def I(): return int(sys.stdin.readline())
def LS(): return sys.stdin.readline().split()
def S(): return sys.stdin.readline().strip()
def IR(n): return [I() for i in range(n)]
def LIR(n): return [LI() for i in range(n)]
def SR(n): return [S() for i in range(n)]
def LSR(n): return [LS() for i in range(n)]
def SRL(n): return [list(S()) for i in range(n)]
def MSRL(n): return [[int(j) for j in list(S())] for i in range(n)]
mod = 10 ** 9 + 7


'''
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize = (5, 5))
x = list(range(1, 150))
y = [i/sum([int(str(i)[j]) for j in range(len(str(i)))]) for i in x]
ax.scatter(x, y)
for j in x:
    ax.annotate(s=j, xy=(x[j-1], y[j-1]))
plt.show()
'''

k = I()
if k <= 9:
    for i in range(1, k + 1):
        print(i)
else:
    for i in range(1, 10):
        print(i)
    for j in range(k - 9):
        print((j + 1) * 10 + 9)




