AT_abc145_d [ABC145D] Knight

Description

[problemUrl]: https://atcoder.jp/contests/abc145/tasks/abc145_d 二次元グリッドの原点 $ (0,0) $ にチェスのナイトの駒があります。 ナイトの駒はマス $ (i,j) $ にあるとき $ (i+1,j+2) $ か $ (i+2,\ j+1) $ のどちらかのマスにのみ動かすことができます。 ナイトの駒をマス $ (X,Y) $ まで移動させる方法は何通りありますか? $ 10^9+7 $ で割った余りを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ X $ $ Y $

Output Format

ナイトの駒を $ (0,0) $ から $ (X,Y) $ まで移動させる方法の数を、$ 10^9+7 $ で割った余りを出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ X\ \leq\ 10^6 $ - $ 1\ \leq\ Y\ \leq\ 10^6 $ - 入力中のすべての値は整数である。 ### Sample Explanation 1 $ (0,0)\ \to\ (1,2)\ \to\ (3,3) $ と $ (0,0)\ \to\ (2,1)\ \to\ (3,3) $ の $ 2 $ 通りが考えられます。 ### Sample Explanation 2 $ (2,2) $ にナイトの駒を移動させることはできません。 ### Sample Explanation 3 方法の数を $ 10^9+7 $ で割った余りを出力してください。