You are given an integer N. Find the number of strings of length N that satisfy the following conditions, modulo 10^9+7:

* The string does not contain characters other than `A`, `C`, `G` and `T`.
* The string does not contain `AGC` as a substring.
* The condition above cannot be violated by swapping two adjacent characters once.

Constraints

* 3 \leq N \leq 100

Input

Input is given from Standard Input in the following format:


N


Output

Print the number of strings of length N that satisfy the following conditions, modulo 10^9+7.

Examples

Input

3


Output

61


Input

4


Output

230


Input

100


Output

388130742
def solve():
    MOD = 10**9+7
    N = int(input())
    
    dp = [[0 for _ in range(4)] for _ in range(N+1)]
    dp[1] = [1, 1, 1, 1]
    
    for i in range(2, N+1):
        for j in range(4):
            dp[i][j] += sum(dp[i-1])
            dp[i][j] %= MOD
        dp[i][1] -= dp[i-2][0] + dp[i-2][2]
        dp[i][2] -= dp[i-2][0]
        if 3 <= i:
            dp[i][1] -= dp[i-3][0] * 3
            dp[i][2] += dp[i-3][2]
    
    ans = sum(dp[N]) % MOD
    print(ans)


if __name__ == '__main__':
    solve()
