//This amazing code is written by Primo.Jay.Pan From CUC

//Any questions please contact me
//QQ:898021802
//Mail: primojpan@gmail.com
//.    primojaypan@cuc.edu.cn


// CF1528B.txt
// Created by Primo Jay Pan on 2021/5/25.
//While (true) RP++;


//head
#include <iostream>
#include <algorithm>
#include <bitset>
#include <complex>
#include <cstdio>
#include <csignal>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <deque>
#include <map>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include <vector>
#define ll long long
#define ull unsigned long long
#define pb push_back
#define mp make_pair
#define pii pair<int,int>
#define pll pair<ll,ll>
#define INF 0x3f3f3f3f
#define maxlongint 2147483647
#define maxint 32767
#define pi(double)acos(-1.0)
#define eps 1e-9
#define MID ((l+r)>>1)
#define lson (o<<1)
#define rson (o<<1|1)
//clear the array
#define cla(a) memset(a,0,sizeof(a))
#define clb(a) memset(a,INF,sizeof(a))
#define clc(a) memset(a,-1,sizeof(a))
#define maxn 1000100
#define mod 998244353


using namespace std;


//BIT
inline int lowbit(int x)
{
	return x&(-x);
}

//var

ll dp[maxn];
ll sum=0;
//main
int main()
{
	//freopen("Untitled 4.txt.in","r",stdin);
	//freopen("Untitled 4.txt.out","w",stdout);
	ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	int n;
	cin>>n;
	for (int i=1;i<=n;i++)
		for (int j=i+i;j<=n;j+=i)
			dp[j]++;
	dp[0]=sum=1;
	for (int i=1;i<=n;i++)
	{
		dp[i]=(sum+dp[i])%mod;
		sum=(sum+dp[i])%mod;
	}
	ll ans=(dp[n])%mod;
	cout<<ans<<endl;
	return 0;
}



/*
Test Data1:
Test Data2:
*/