5차원 초콜릿

2x2x2x2xn 오차원 상자를 1x1x1x1x2 조각으로 채우는 경우의 수를 1000000007로 나눈 나머지를 구한다.

어려움8동적 계획법수학조합론아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

5차원 세계에 크기가 2×2×2×2×n2 \times 2 \times 2 \times 2 \times n인 초콜릿이 있다. 이 초콜릿은 단위 정육면체 16n16n개로 이루어져 있다.

이 초콜릿을 잘라서 크기가 1×1×1×1×21 \times 1 \times 1 \times 1 \times 2인 조각 8n8n개를 만들려고 한다. 자르는 방법의 수를 구하는 프로그램을 작성하시오.

조각의 방향은 중요하지 않다. 즉, 1×1×1×2×11 \times 1 \times 1 \times 2 \times 12×1×1×1×12 \times 1 \times 1 \times 1 \times 1도 가능한 크기이다. 어떤 조각이 덮는 단위 정육면체 두 개의 조합이 다르면 서로 다른 방법으로 센다.

입력

첫째 줄에 nn이 주어진다. (1n1091 \le n \le 10^9)

출력

첫째 줄에 자르는 방법의 수를 109+710^9+7로 나눈 나머지를 출력한다.