#include <bits/stdc++.h>
using namespace std;
int n,m;
#define mod 998244353
int ar[200000];
int seg[800000];
void build(int low,int high,int node){
if(low==high){
seg[node] = ar[low];
return;
}
int mid = (low+high)/2;
build(low,mid,2*node);
build(mid+1,high,2*node+1);
seg[node] = (seg[2*node]%mod + seg[2*node+1]%mod)%mod;
}
int main() {
// your code goes here
cin>>n>>m;
for(int i=0;i<n;i++){
ar[i] = 1;
}
build(0,n-1,1);
for(int i=1;i<=40;i++){
cout<<seg[i];
}
//cout<<seg[1];
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBuLG07CiNkZWZpbmUgbW9kIDk5ODI0NDM1MwoKaW50IGFyWzIwMDAwMF07CmludCBzZWdbODAwMDAwXTsKdm9pZCBidWlsZChpbnQgbG93LGludCBoaWdoLGludCBub2RlKXsKCQoJaWYobG93PT1oaWdoKXsKCQlzZWdbbm9kZV0gPSBhcltsb3ddOwoJCXJldHVybjsKCX0KCWludCBtaWQgPSAobG93K2hpZ2gpLzI7CglidWlsZChsb3csbWlkLDIqbm9kZSk7CglidWlsZChtaWQrMSxoaWdoLDIqbm9kZSsxKTsKCXNlZ1tub2RlXSA9IChzZWdbMipub2RlXSVtb2QgKyBzZWdbMipub2RlKzFdJW1vZCklbW9kOwoJCn0KaW50IG1haW4oKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCgoJY2luPj5uPj5tOwoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJYXJbaV0gPSAxOwoJfQoJCglidWlsZCgwLG4tMSwxKTsJCglmb3IoaW50IGk9MTtpPD00MDtpKyspewoJCWNvdXQ8PHNlZ1tpXTsKCX0KCS8vY291dDw8c2VnWzFdOwoJcmV0dXJuIDA7Cn0=