#include<iostream>
#include<vector>
using namespace std;
int main()
{
    int n,m;cin>>n>>m;
    vector<vector<long long>> a(n+1,vector<long long>(m+1,1));
    for(int y=1;y<=n;y++)
    {
        for(int x=1;x<=m;x++)
        {
            if(x==1&&y==1)continue;
            else if(y==1)a[y][x]=1;
            else if(x==1)a[y][x]=1;
            else a[y][x]=(a[y-1][x]+a[y][x-1])%(1000000007);        }
    }
    cout<<a[n][m];
    return 0;
}

用x,y来循环便于理解,这里上交了几次才看到题目要求对10E+7取模,总之做题要细心。