#define _USE_MATH_DEFINES
#include <algorithm>
#include <array>
#include <bitset>
#include <cassert>
#include <cctype>
#include <climits>
#include <clocale>
#include <cmath>
#include <complex>
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <deque>
#include <fstream>
#include <functional>
#include <iomanip>
#include <iostream>
#include <iterator>
#include <list>
#include <map>
#include <numeric>
#include <queue>
#include <regex>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <tuple>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>

const int MOD = 1000000007; 
const int INF = 1000000000; //1e9
const int NIL = -1;
const long long LINF = 1000000000000000000; // 1e18
const long double EPS = 1E-10;

template<class T, class S> inline bool chmax(T &a, const S &b){
    if(a < b){
        a = b; return true;
    }
    return false;
}
template<class T, class S> inline bool chmin(T &a, const S &b){
    if(b < a){
        a = b; return true;
    }
    return false;
}




int main(){
    int N; std::cin >> N;
    int ans(0);
    std::vector<int> X(N), Y(N);
    for(int i(0); i < N; ++i)
        std::cin >> X[i] >> Y[i];
    for(int i(0); i < N; ++i){
        for(int j(i+1); j < N; ++j){
            int cnt(2);
            if(X[i] == X[j]){
                for(int k(0); k < N; ++k){
                    if(k == i || k == j) continue;
                    if(X[i] == X[k]) ++cnt;
                }
            }else if(Y[i] == Y[j]){
                for(int k(0); k < N; ++k){
                    if(k == i || k == j) continue;
                    if(Y[i] == Y[k]) ++cnt;
                }
            }else{
                int dx(X[i]-X[j]), dy(Y[i]-Y[j]);
                for(int k(0); k < N; ++k){
                    if(k == i || k == j) continue;
                    int Dx(X[i]-X[k]), Dy(Y[i]-Y[k]);
                    if(dx*Dy == dy*Dx) ++cnt;
                }
            }
            chmax(ans, cnt);
        }
    }
    std::cout << ans << std::endl;
    return 0;
}