#include <bits/stdc++.h>
using namespace std;
long long N = 1e9 + 7;
long long exponentiation(long long base, long long exp)
{
if (exp == 0)
return 1;
if (exp == 1)
return base % N;
long long t = exponentiation(base, exp / 2);
t = (t * t) % N;
if (exp % 2 == 0)
return t;
else
return ((base % N) * t) % N;
}
int main(){
long long n;
cin >> n;
long long power = exponentiation(2, n) % N;
long long multiple = (n - (n%5)) / 5;
long long answer;
if (n < 4) {
answer = 0;
}
else if (n==4) {
answer = 2;
}
else if (n%5 == 0) {
answer = (power - multiple * 2) / 10;
}
else if (n%5 == 1) {
answer = (power - multiple * 4) / 10;
}
else if (n%5 == 2) {
answer = (power - multiple * 8) / 10 + exponentiation(2, multiple - 1);
}
else if (n%5 == 3) {
answer = (power - multiple * 6) / 10;
}
else if (n%5 == 4) {
answer = (power - multiple * 2) / 10;
}
cout << answer;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKbG9uZyBsb25nIE4gPSAxZTkgKyA3OwoKbG9uZyBsb25nIGV4cG9uZW50aWF0aW9uKGxvbmcgbG9uZyBiYXNlLCBsb25nIGxvbmcgZXhwKQp7CiAgICBpZiAoZXhwID09IDApCiAgICAgICAgcmV0dXJuIDE7CiAKICAgIGlmIChleHAgPT0gMSkKICAgICAgICByZXR1cm4gYmFzZSAlIE47CiAgICAgICAgCiAgICBsb25nIGxvbmcgdCA9IGV4cG9uZW50aWF0aW9uKGJhc2UsIGV4cCAvIDIpOwogICAgdCA9ICh0ICogdCkgJSBOOwogCiAgICBpZiAoZXhwICUgMiA9PSAwKQogICAgICAgIHJldHVybiB0OwogICAgZWxzZQogICAgICAgIHJldHVybiAoKGJhc2UgJSBOKSAqIHQpICUgTjsKfQoKaW50IG1haW4oKXsKICAgIGxvbmcgbG9uZyBuOwogICAgY2luID4+IG47Cglsb25nIGxvbmcgcG93ZXIgPSBleHBvbmVudGlhdGlvbigyLCBuKSAlIE47Cglsb25nIGxvbmcgbXVsdGlwbGUgPSAobiAtIChuJTUpKSAvIDU7Cglsb25nIGxvbmcgYW5zd2VyOwoJaWYgKG4gPCA0KSB7CgkJYW5zd2VyID0gMDsKCX0KCWVsc2UgaWYgKG49PTQpIHsKCQlhbnN3ZXIgPSAyOwoJfQoJZWxzZSBpZiAobiU1ID09IDApIHsKCQlhbnN3ZXIgPSAocG93ZXIgLSBtdWx0aXBsZSAqIDIpIC8gMTA7Cgl9CgllbHNlIGlmIChuJTUgPT0gMSkgewoJCWFuc3dlciA9IChwb3dlciAtIG11bHRpcGxlICogNCkgLyAxMDsKCX0KCWVsc2UgaWYgKG4lNSA9PSAyKSB7CgkJYW5zd2VyID0gKHBvd2VyIC0gbXVsdGlwbGUgKiA4KSAvIDEwICsgZXhwb25lbnRpYXRpb24oMiwgbXVsdGlwbGUgLSAxKTsKCX0KCWVsc2UgaWYgKG4lNSA9PSAzKSB7CgkJYW5zd2VyID0gKHBvd2VyIC0gbXVsdGlwbGUgKiA2KSAvIDEwOwoJfQoJZWxzZSBpZiAobiU1ID09IDQpIHsKCQlhbnN3ZXIgPSAocG93ZXIgLSBtdWx0aXBsZSAqIDIpIC8gMTA7Cgl9CgkKCWNvdXQgPDwgYW5zd2VyOwp9