#include <cstdio>
#include <algorithm>
#include <vector>
#include <climits>
#include <unordered_map>
#include <string>

#define f first
#define s second

using namespace std;

string st, st2;
int n, nr;

unordered_map <string, bool> mp;

inline void bec (int k, int lst)
{
    if (k > n)
    {
        reverse (st2.begin (), st2.end ());
        if (!mp[st] && !mp[st2])
        {
            mp[st] = true;
            ++nr;
        }

        reverse (st2.begin (), st2.end ());

        return;
    }

    for (int i = 0; i <= 3; ++i)
        if (i != (lst + 2) % 4)
        {
            st += (char)(i + 48);
            st2 += (char)((i + 2) % 4 + 48);

            bec (k + 1, i);

            st.erase (st.size () - 1, 1);
            st2.erase (st2.size () - 1, 1);
        }
}

int main ()
{
   // freopen ("file.in", "r", stdin);

    scanf ("%d", &n);

    bec (2, -1);

    printf ("%d\n", nr);

    return 0;
}