#include #define rep(i,n) for(int i=(0);i<(n);i++) using namespace std; typedef long long ll; template bool chmax(T &a, const T &b) { if (a bool chmin(T &a, const T &b) { if (a>b) { a=b; return 1; } return 0; } const ll MOD = 1e9 + 7; ll powmod(ll a, ll b){ if(b == 0) return 1; if(b & 1) { return a * powmod(a, b - 1) % MOD; } else { ll d = powmod(a, b / 2) % MOD; return d * d % MOD; } } ll sub(ll a, ll b){ return a + MOD - b; } ll inv(ll a){ return powmod(a, MOD - 2); } int main(){ cin.tie(0); ios::sync_with_stdio(false); ll n, m; cin >> n >> m; ll ans = 0ll; ll t = 1ll; for(ll i = n; i <= m; i++){ ans += t; ans %= MOD; t *= (i+1); t %= MOD; t *= inv(i - n + 1); t %= MOD; } cout << ans << endl; }