# 760 : ビットごとの演算の和

次のように定義する：\
$$g(m,n) = (m \oplus n) + (m \lor n) + (m \land n)$$\
ここで$$\oplus, \lor, \land$$はそれぞれビットごとの排他的論理和(XOR)、論理和(OR)、論理積(AND)である。

また次のように定義する：\
$$\displaystyle G(N) = \sum_{n=0}^N \sum_{k=0}^n G(k,n-k)$$\
例えば、$$G(10) = 754, G(10^2) = 583766$$である。

$$G(10^{18})$$を求めよ。答えは$$1\,000\,000\,007$$で割った余りを入力せよ。
