#include using namespace std; typedef long long ll; typedef long double ld; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b> n >> m; vector v(n),r(m); for(int i=0;i> v[i]; } for(int i=0;i> r[i]; } int a,b;cin >> a >> b; const int cmx=100000; vector dv(cmx+1),dr(cmx+1); dv[0]=1,dr[0]=1; for(int i=0;i tv(cmx+1); for(int j=0;j<=cmx;j++){ if(dv[j]==0){ continue; } (tv[j]+=dv[j])%=mod; if(j+v[i]<=cmx){ (tv[j+v[i]]+=dv[j])%=mod; } } for(int j=0;j<=cmx;j++){ dv[j]=tv[j]; } } for(int i=0;i tr(cmx+1); for(int j=0;j<=cmx;j++){ if(dr[j]==0){ continue; } (tr[j]+=dr[j])%=mod; if(j+v[i]<=cmx){ (tr[j+r[i]]+=dr[j])%=mod; } } for(int j=0;j<=cmx;j++){ dr[j]=tr[j]; } } vector sv(cmx+1); for(int i=1;i<=cmx;i++){ (sv[i]=sv[i-1]+dv[i])%=mod; } ll ans=0; for(int i=1;i<=cmx;i++){ (ans+=(sv[min(cmx,i*b)]-sv[min(cmx,i*a-1)]+mod)%mod*dr[i]%mod)%=mod; } cout << ans << endl; }