#include using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define all(x) (x).begin(),(x).end() typedef long long ll; typedef pair P; const int mod = 1000000007; //出力は (ans % mod + mod) % mod (負の剰余を正にする) const int inf = 1e9; const long long INF = 1LL << 60; // INF = 11 ll modpow(ll a,ll b){ // aのb乗 ll ans=1; while(b>0){ if(b&1) ans=ans*a%998244353; a=a*a%998244353; b/=2; } return ans; } ll f(ll num){ if(num == 1){ return 1;; }else{ return 2*f(num-1) + 1; } } int main() { ll n,l; cin >> n >> l; ll x; if(n % l == 0){ x = n/l; }else{ x = n/l + 1; } cout << modpow(2,x)-1 << endl; }