#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0; i<n; i++)
typedef pair<int,int> P;
typedef long long ll;
const int INF = 1001001001;
const ll INFL = 1e17;
const int MOD = 1e+9+7;


int main(){
	int n;
	cin >> n;
	vector<vector<int>> arr(n,vector<int>(5));
	for(int i = 0; i < n; i++){
		for(int j = 0; j < 5; j++){
			cin >> arr[i][j];
		}
	}

	int left = 0, right = 1e9+1;
	while(right - left > 1){
		int mid = (left + right) / 2;
		bool flg = false;

		set<int> st;
		for(int i = 0; i < n; i++){
			int bit = 0;
			for(int j = 0; j < 5; j++){
				if(arr[i][j] >= mid) bit += (1<<j);
			}
			st.insert(bit);
		}

		for(int i : st){
			for(int j : st){
				for(int k : st){
					if((i | j | k) == (1<<5)-1){
						flg = true;
						break;
					}
				}
			}
		}

		if(flg) left = mid;
		else right = mid;
	}

	cout << left << endl;

	return 0;
}
// 200c.cpp : このファイルには 'main' 関数が含まれています。プログラム実行の開始と終了がそこで行われます。
//

#include <iostream>
#include <vector>
#include <set>

using namespace std;

void solve() {
    int N;
    cin >> N;
    int m = 5;
    vector<vector<int>> A(N, vector<int>(m, 0));
    for (auto& l : A)for (auto& op : l) cin >> op;

    auto check = [&](int x)-> bool {
        set<int> z;
        for (auto& l : A) {
            int bit = 0;
            for (auto& op : l) {
                bit <<= 1;
                if (x <= op) {
                    bit += 1;
                }
            }
            z.insert(bit);
        }
        int allok = (1 << m) - 1;
        for(auto& s1 : z)for(auto& s2 :z)for(auto& s3 :z){
            int sp = s1 | s2 | s3;
            if (sp == allok) {
                return true;
            }

        }
        return false;
    };
    int l,  r;
    l = 0;
    r = 1e9 + 1;
    bool jg;
    while ((r -l) > 1 ) {
        int m = (r + l) / 2;
        jg = check(m);
        if (jg) {
            l = m;
        }
        else r = m;
    }
   

    cout << l << endl;
    
}

int main()
{
    solve();
    return 0;
}

// プログラムの実行: Ctrl + F5 または [デバッグ] > [デバッグなしで開始] メニュー
// プログラムのデバッグ: F5 または [デバッグ] > [デバッグの開始] メニュー

// 作業を開始するためのヒント: 
//    1. ソリューション エクスプローラー ウィンドウを使用してファイルを追加/管理します 
//   2. チーム エクスプローラー ウィンドウを使用してソース管理に接続します
//   3. 出力ウィンドウを使用して、ビルド出力とその他のメッセージを表示します
//   4. エラー一覧ウィンドウを使用してエラーを表示します
//   5. [プロジェクト] > [新しい項目の追加] と移動して新しいコード ファイルを作成するか、[プロジェクト] > [既存の項目の追加] と移動して既存のコード ファイルをプロジェクトに追加します
//   6. 後ほどこのプロジェクトを再び開く場合、[ファイル] > [開く] > [プロジェクト] と移動して .sln ファイルを選択します
