#include<iostream>
using namespace std;
int n,m,result;
int dp[1005][1005];
int main(){
cin >> n >> m;
for( int i = 1; i <= n; i++ ){
dp[i][0] = 1;
dp[i][1] = 1;
}
for( int i = 2; i <= n; i++ ){
for( int j = 1; j <= m; j++ ){
dp[i][j] = dp[i-1][j-1] + dp[i-1][j];
dp[i][j] %= 1000000007;
}
}
cout << dp[n][m];
return 0;
}