#define REP(i,n) for(int i=0; i<(int)(n); i++)

#include <queue>
#include <cstdio>
inline int getInt(){ int s; scanf("%d", &s); return s; }

typedef long long ll;

#include <set>

using namespace std;

const ll mod = 998244353;

ll pow2(int n){
  ll r = 1;
  REP(i,n) r = (r * 2) % mod;
  return r;
}

int main(){
  const int n = getInt();
  vector<int> x(n);
  vector<int> y(n);

  REP(i,n){
    x[i] = getInt();
    y[i] = getInt();
  }

  if(n <= 2) {
    puts("0");
    return 0;
  }

  ll ans = pow2(n) - 1 - n;

  for(int i = 0; i < n; i++){
    for(int j = i + 1; j < n; j++){
      int cnt = 2;
      for(int k = 0; k < n; k++){
	if(k == i || k == j) continue;

	if((x[j] - x[i]) * (y[k] - y[i]) == (y[j] - y[i]) * (x[k] - x[i])){
	  if(k < j) goto bad;
	  cnt++;
	}
      }

      ans = (ans - (pow2(cnt) - cnt - 1) + mod) % mod;
    bad:;
    }
  }

  printf("%lld\n", ans);

  return 0;
}