#include <iostream>
#include <vector>
#define int unsigned long long
//const int MOD = 1e9+7;
using namespace std;
main() {
int n;
while(cin >> n){
if (n >= 3) {
vector<int> dp(n + 1, 0);
dp[0] = 1;
dp[1] = 2;
dp[2] = 7;
vector<int> prex(n - 1, 0);
prex[0] = 1;
for (int i = 3; i <= n; i++) {
prex[i - 2] = prex[i - 3] + dp[i - 2];
dp[i] = 2 * dp[i - 1] + 3 * dp[i - 2] + 2 * prex[i - 3];}
cout << dp[n];
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojZGVmaW5lIGludCB1bnNpZ25lZCBsb25nIGxvbmcKLy9jb25zdCBpbnQgTU9EID0gMWU5Kzc7CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cm1haW4oKSB7CiAgICBpbnQgbjsKICAgIHdoaWxlKGNpbiA+PiBuKXsKICAgIAlpZiAobiA+PSAzKSB7CiAgICAJCXZlY3RvcjxpbnQ+IGRwKG4gKyAxLCAwKTsKICAgIAkJZHBbMF0gPSAxOwogICAgCQlkcFsxXSA9IDI7CiAgICAJCWRwWzJdID0gNzsKICAgIAkJdmVjdG9yPGludD4gcHJleChuIC0gMSwgMCk7CiAgICAJCXByZXhbMF0gPSAxOwogICAgCQlmb3IgKGludCBpID0gMzsgaSA8PSBuOyBpKyspIHsKICAgIAkJCXByZXhbaSAtIDJdID0gcHJleFtpIC0gM10gKyBkcFtpIC0gMl07CiAgICAJCQlkcFtpXSA9IDIgKiBkcFtpIC0gMV0gKyAzICogZHBbaSAtIDJdICsgMiAqIHByZXhbaSAtIDNdO30KICAgIAkJY291dCA8PCBkcFtuXTsKICAgIAl9CiAgICB9CiAgICByZXR1cm4gMDsKfQ==