#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vecI = vector<int>;
using vec2I = vector<vecI>;
using vec3I = vector<vec2I>;
ll mod{(ll)1e9 + 7};
double pi = 2 * acos(0.0);
//Check for long

void solve()
{
	ll n;
	cin >> n;
	ll ct{}, minus{1LL}, i{1000LL};
	int mul{};
	for(; i <= n; i *= 1000)
	{
		ct += (i - minus) * mul;
		minus *= 1000;
		mul++;
	}
	ct += (n - minus + 1) * mul;
	cout << ct;

}


int main() 
{
//Ignore from
	//Godspeed cin to cout
	ios_base::sync_with_stdio(0);	
    cin.tie(0); cout.tie(0);
	#ifndef ONLINE_JUDGE
	//for getting input from input text
	freopen("input.txt", "r", stdin);
	//for writing output to output.txt
	freopen("output.txt", "w", stdout);
	#endif										
// Ignore to									
	// int t;
	// cin >> t;
	// while(t--)
		solve();
	return 0;
}

//Clock
// auto start = chrono::steady_clock::now();
// auto end = chrono::steady_clock::now();
// auto diff = end - start;
// cerr << chrono::duration <double, milli> (diff).count() << " ms" << endl;



//Napolean Cake
// void solve()
// {
// 	int n;
// 	cin >> n;
// 	vecI vec(n);
// 	for(int &x : vec)
// 		cin >> x;
// 	vecI diffArr(n + 1);
// 	for(int i{}; i < n; i++)
// 	{
// 		if(vec[i] == 0)
// 			continue;

// 		diffArr[max(i - vec[i] + 1, 0)]++;
// 		diffArr[min(i + 1, n)]--;
// 	}
// 	int sum{};
// 	for(int i{}; i < n; i++)
// 	{
// 		sum += diffArr[i];
// 		diffArr[i] = sum;
// 		if(diffArr[i] == 0)
// 			cout << 0;
// 		else
// 			cout << 1;
// 		cout << ' ';
// 	}
// 	cout << '\n';
// }


//Alexey & Train
// void solve()
// {
// 	int n;
// 	cin >> n;
// 	vector<pair<int, int>> vec(n);
// 	for(auto &it : vec)
// 		cin >> it.first >> it.second;

// 	vector<int> delay(n);
// 	for(auto &it : delay)
// 		cin >> it;

// 	int cur{};
// 	int prev{};
// 	for(int i{}; i < n; i++)
// 	{
// 		cur += vec[i].first - prev + delay[i];
// 		//cerr << cur << ' ';
// 		if(i == n - 1)
// 			break;
// 		int min_time{(int)ceil((vec[i].second - vec[i].first) / 2.0)};
// 		cur = max(cur + min_time, vec[i].second);
// 		prev = vec[i].second;
// 	}
// 	cout << cur << '\n';
// }
#include <iostream>
#include <iomanip>
#include <vector>
#include <cmath>
#include <algorithm>
#include <set>
#include <utility>
#include <queue>
#include <map>
#include <assert.h>
#include <stack>
#include <string>
#include <ctime>
#include <chrono>
#include <random>
#define int long long int
using namespace std;

const int MAX = 1e4;
void solve()
{
	int n;
	cin >> n;
	int cnt = 3;
	cout << 6 << ' ' << 10 << ' ' << 15 << ' ';
	for (int j = 16; j <= MAX; j++)
	{
		if (cnt == n) break;
		if (j % 6 == 0 || j % 10 == 0 || j % 15 == 0)
		{
			cnt++;
			cout << j << ' ';
		}
	}
	cout << '\n';
	return;
}

signed main()
{
	ios::sync_with_stdio(0);
	cin.tie(NULL); cout.tie(NULL);
	int t;
	//cin >> t;
	t=1;
	while (t--)
	{
		solve();
	}
	return 0;
}