#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define re register
#define gc getchar
#define pc putchar
#define cs const

cs ll mod=1000000007;

ll fac[1000001]={1,1},inv[1000001]={1,1},ifac[1000001]={1,1};

inline
ll C(int n,int m){
	return fac[n]*ifac[m]%mod*ifac[n-m]%mod;
}

int n,m,k,maxn;

signed main(){
	
	for(int re i=2;i<=1000000;++i)
	fac[i]=fac[i-1]*i%mod,
	inv[i]=(mod-mod/i)*inv[mod%i]%mod,
	ifac[i]=ifac[i-1]*inv[i]%mod;
	
	scanf("%d%d%d",&n,&m,&k);
	--n;
	maxn=max(n,m+k);
	ll sum=1,ans=1;
	for(int re i=1;i<=m+k;++i){
		sum=(sum<<1)%mod;
		if(i>m)sum=(sum+mod-C(i-1,m))%mod;
		if(i>k)sum=(sum+mod-C(i-1,k))%mod;
		ans=ans*3%mod;
		ans=(ans+C(n+i,i)*sum%mod)%mod;
	}
	cout<<ans;
	return 0;
}