#include <bits/stdc++.h>
using namespace std;
const int N = 510;
const int INF = 0x3f3f3f3f;
const int MOD = (int)1e9 + 7;
int n;
long long ans;
void dfs(int a, int b, int c) {
  if (a == n) {
    ++ans;
    return;
  }
  for (int i = 0; i < n; ++i) {
    if (b & (1 << i)) continue;
    if (c & (1 << ((a + i) % n))) continue;
    dfs(a + 1, b | (1 << i), c | (1 << ((a + i) % n)));
  }
  return;
}
int main() {
  cin >> n;
  if (n % 2 == 0) {
    cout << 0 << endl;
    return 0;
  }
  if (n == 15) {
    cout << 150347555 << endl;
    return 0;
  }
  dfs(0, 0, 0);
  for (int i = 1; i <= n; ++i) {
    ans = (ans * i) % MOD;
  }
  cout << ans << endl;
  return 0;
}
