#include <bits/stdc++.h>
#define int long long
using namespace std;
const int MOD = 1e9 + 7;

int binpow(int a, int n) {
	if (n == 0) return 1;
	int x = binpow(a, n / 2);
	if (n % 2 == 0) return (x * x) % MOD;
	else return ((x * x) % MOD * a) % MOD;
}

signed main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int a, b;
	cin >> a >> b;
	int n = a + b - 1, k = b - 1;
	int x = 1;
	for (int i = k + 1; i <= n; ++i) x = (x * i) % MOD;
	int y = 1;
	for (int i = 1; i <= n - k; ++i) y = (y * i) % MOD;
	cout << (x * binpow(y, MOD - 2)) % MOD;
    return 0;
}