You have a given integer n. Find the number of ways to fill all 3 × n tiles with the shape described in the picture below. Upon filling, no empty spaces are allowed. Shapes cannot overlap.

<image> This picture describes when n = 4. The left one is the shape and the right one is 3 × n tiles. 

Input

The only line contains one integer n (1 ≤ n ≤ 60) — the length.

Output

Print the number of ways to fill.

Examples

Input


4


Output


4

Input


1


Output


0

Note

In the first example, there are 4 possible cases of filling.

In the second example, you cannot fill the shapes in 3 × 1 tiles.
#include <bits/stdc++.h>
using namespace std;
int mod = 1e9 + 7;
bool isPrime(long long int n) {
  if (n <= 1) return false;
  if (n <= 3) return true;
  if (n % 2 == 0 || n % 3 == 0) return false;
  for (long long int i = 5; i * i <= n; i = i + 6)
    if (n % i == 0 || n % (i + 2) == 0) return false;
  return true;
}
void solve() {
  int n, m, x, y;
  cin >> n >> m >> x >> y;
  long long count = 0;
  char board[n][m];
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      cin >> board[i][j];
      if (j == 0 && board[i][j] == '.') {
        count += x;
        board[i][j] = 's';
      }
    }
  }
  for (int i = 0; i < n; i++) {
    for (int j = 1; j < m; j++) {
      if (board[i][j] == '.') {
        if (board[i][j - 1] == 's') {
          if (2 * x < y) {
            board[i][j] = 's';
            count += x;
          } else {
            board[i][j] = 'm';
            count += y - x;
          }
        } else {
          board[i][j] = 's';
          count += x;
        }
      }
    }
  }
  cout << count << endl;
  return;
}
int main() {
  int n;
  cin >> n;
  if (n % 2 == 0) {
    int x = pow(2, n / 2);
    cout << x;
  } else
    cout << 0 << endl;
}
