M=10**9+7;I=[1,1];*F=I;*R=I 2.upto(999){|i|I<a,b,c{$m[[a,c]]||=F[a+b+c]*R[b-1]*R[a+c+1]%M+(a>0?g[a-1,b,c]:F[b+c]*R[b]*R[c]%M)+(c>0?g[a,b,c-1]:F[a+b]*R[a]*R[b]%M)%M} gets;$<.map{|e|$m={};a,b,c=e.split.map &:to_i;p (F[a+b+c-1]*R[b-1]*R[a+c]+g[a-1,b,c-1])%M}