#include <iostream>
#include <utility>
#include <vector>
using namespace std;

int main() {
  int n;
  cin >> n;
  vector<pair<int, int>> coords;
  for (int i = 0; i < n; ++i) {
    int x, y;
    cin >> x >> y;
    coords.push_back({x, y});
  }
  for (int i = 0; i < n; ++i) {
    for (int j = i + 1; j < n; ++j) {
      for (int k = j + 1; k < n; ++k) {
        if ((coords[j].first - coords[i].first) * (coords[k].second - coords[i].second) == (coords[k].first - coords[i].first) * (coords[j].second - coords[i].second)) {
          cout << "Yes\n";
          return 0;
        }
      }
    }
  }
  cout << "No\n";
  return 0;
}
#include <bits/stdc++.h>
#define REP(i,n) for(ll i=0;i<(ll)(n);i++)
#define REPD(i,n) for(ll i=n-1;i>=0;i--)
#define FOR(i,a,b) for(ll i=a;i<=(ll)(b);i++)
#define FORD(i,a,b) for(ll i=a;i>=(ll)(b);i--)
#define ALL(x) (x).begin(),(x).end()
#define SIZE(x) ((ll)(x).size())
#define MAX(x) *max_element(ALL(x))
#define MIN(x) *min_element(ALL(x))
#define INF 1000000000
using namespace std;
typedef long long ll;

int main() {
    int N;
    cin >> N;

    int x[N], y[N];
    REP(i, N){
        cin >> x[i] >> y[i];
    }


    bool flag = false;
    FOR(i, 0, N-3){
        FOR(j, i+1, N-2){
            FOR(k, j+1, N-1){
                int resx, resy, posx, posy;
                resx = x[k] - x[i];
                resy = y[k] - y[i];
                posx = x[j] - x[i];
                posy = y[j] - y[i];

                //cout << i << " " << j << " " << k << endl;
                //cout << resx*posx + resy*posy << endl;
                if(resx*posy - resy*posx == 0){
                    flag = true;
                    break;
                }
            }
        }
    }

    if(flag) cout << "Yes" << endl;
    else cout << "No" << endl;
    
    return 0;
}