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

int c(int n, int r) {
    if (r < 0 || r > n) return 0;
    if (r == 0 || r == n) return 1;
    if (memo.find({n, r}) != memo.end()) return memo[{n, r}];
    return memo[{n, r}] = (c(n - 1, r - 1) + c(n - 1, r)) % MOD;
}

signed main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int m, n;
	cin >> m >> n;
	cout << c(m + n - 1, m);
    return 0;
}