#include <stdio.h> int main() { int n=0,m=0; long long int mod; scanf("%d%d",&n,&m); if(n==1||m==1) mod=1; else { long long int a=1,b=1,c=1; const int g=1000000007; for(int i=m+n-2;i>0;i--) { a=a*i%g; } for(int j=m-1;j>0;j--) { b=b*j%g; } for(int u=n-1;u>0;u--) { c=c*u%g; } long long int x=(b*c)%g,y=g-2,z=1; for(;y;) { if(y&1) z=(z*x)%g; x=x*x%g; y=y>>1; } mod=(a*z)%g; } printf("%lld",mod); return 0; }