#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
long long dp[205][205], n;
int main() {
  cin >> n;
  vector<pair<long long, long long> > pt(n);
  for (long long i = 0; i < n; i++) {
    cin >> pt[i].first >> pt[i].second;
  }
  long long ori = 0;
  for (long long i = 0; i < n; i++) {
    ori += pt[i].first * pt[(i + 1) % n].second -
           pt[i].second * pt[(i + 1) % n].first;
  }
  if (ori > 0) {
    reverse(pt.begin(), pt.end());
  }
  for (long long len = 1; len < n; len++) {
    for (long long st = 0; st < n - len; st++) {
      long long l = st, r = st + len;
      if (len == 1)
        dp[l][r] = 1ll;
      else {
        dp[l][r] = 0;
        for (long long i = l + 1; i < r; i++) {
          if ((pt[i].second - pt[l].second) * (pt[r].first - pt[i].first) -
                  (pt[i].first - pt[l].first) * (pt[r].second - pt[i].second) >
              0) {
            dp[l][r] = (dp[l][r] + (dp[l][i] * dp[i][r]) % mod) % mod;
          }
        }
      }
    }
  }
  cout << dp[0][n - 1] << endl;
  return 0;
}
