100 atcoder#ABC122D. [ABC122D] We Like AGC

[ABC122D] We Like AGC

Score : 400400 points

Problem Statement

You are given an integer NN. Find the number of strings of length NN that satisfy the following conditions, modulo 109+710^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.

Notes

A substring of a string TT is a string obtained by removing zero or more characters from the beginning and the end of TT.

For example, the substrings of ATCODER include TCO, AT, CODER, ATCODER and `` (the empty string), but not AC.

Constraints

  • 3N1003 \leq N \leq 100

Input

Input is given from Standard Input in the following format:

NN

Output

Print the number of strings of length NN that satisfy the following conditions, modulo 109+710^9+7.

3
61

There are 43=644^3 = 64 strings of length 33 that do not contain characters other than A, C, G and T. Among them, only AGC, ACG and GAC violate the condition, so the answer is 643=6164 - 3 = 61.

4
230
100
388130742

Be sure to print the number of strings modulo 109+710^9+7.