#include <algorithm>
#include <bitset>
#include <cassert>
#include <climits>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <deque>
#include <iomanip>
#include <iostream>
#include <map>
#include <numeric>
#include <queue>
#include <set>
#include <stack>
#include <string>
#ifdef PRINTERS
#include "printers.hpp"
using namespace printers;
#define tr(a) cerr<<#a<<" : "<<a<<endl;
#else
#define tr(a)
#endif
#define ll long long
#define pb push_back
#define mp make_pair
#define pii pair<int,int>
#define vi vector<int>
#define all(a) (a).begin(),(a).end()
#define F first
#define S second
#define sz(x) (int)x.size()
#define hell 1000000007
#define endl '\n'
#define rep(i,a,b) for(int i=a;i<b;i++)
#define rep1(i,b) for(int i=1;i<=b;i++)
using namespace std;
void solve()
{
int n;
int A[n][n],c[n][n];
rep(i,0,n){
rep(j,0,n){
cin>>A[i][j];
c[i][j]=0;
}
}
rep(i,0,n){
rep(j,0,n){
if(A[i][j]>1)
{
rep(k,0,n){
rep(l,0,n){
if(A[i][j] == A[i][l] +A[k][j])
{c[i][j]=1;}
else continue;
}
}
}
else {c[i][j]=1;}
}
}
bool flag=0;
rep(i,0,n){
rep(j,0,n){
if(c[i][j]==0)
flag =1;
}
}
if(flag==1) cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int t=1;
//cin>>t;
while(t--){
solve();
}
return 0;
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGJpdHNldD4KI2luY2x1ZGUgPGNhc3NlcnQ+CiNpbmNsdWRlIDxjbGltaXRzPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxjc3RkaW8+CiNpbmNsdWRlIDxjc3RkbGliPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPGRlcXVlPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgojaW5jbHVkZSA8bnVtZXJpYz4KI2luY2x1ZGUgPHF1ZXVlPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8c3RhY2s+CiNpbmNsdWRlIDxzdHJpbmc+CgojaWZkZWYgUFJJTlRFUlMKI2luY2x1ZGUgInByaW50ZXJzLmhwcCIKdXNpbmcgbmFtZXNwYWNlIHByaW50ZXJzOwojZGVmaW5lIHRyKGEpCQljZXJyPDwjYTw8IiA6ICI8PGE8PGVuZGw7CiNlbHNlCiNkZWZpbmUgdHIoYSkKI2VuZGlmCgojZGVmaW5lIGxsICAgICAgICAgIGxvbmcgbG9uZwojZGVmaW5lIHBiICAgICAgICAgIHB1c2hfYmFjawojZGVmaW5lIG1wICAgICAgICAgIG1ha2VfcGFpcgojZGVmaW5lIHBpaSAgICAgICAgIHBhaXI8aW50LGludD4KI2RlZmluZSB2aSAgICAgICAgICB2ZWN0b3I8aW50PgojZGVmaW5lIGFsbChhKSAgICAgIChhKS5iZWdpbigpLChhKS5lbmQoKQojZGVmaW5lIEYgICAgICAgICAgIGZpcnN0CiNkZWZpbmUgUyAgICAgICAgICAgc2Vjb25kCiNkZWZpbmUgc3ooeCkgICAgICAgKGludCl4LnNpemUoKQojZGVmaW5lIGhlbGwgICAgICAgIDEwMDAwMDAwMDcKI2RlZmluZSBlbmRsICAgICAgICAnXG4nCiNkZWZpbmUgcmVwKGksYSxiKQlmb3IoaW50IGk9YTtpPGI7aSsrKQojZGVmaW5lIHJlcDEoaSxiKQlmb3IoaW50IGk9MTtpPD1iO2krKykKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCgoKdm9pZCBzb2x2ZSgpCnsKaW50IG47CmludCBBW25dW25dLGNbbl1bbl07CnJlcChpLDAsbil7CglyZXAoaiwwLG4pewoJCWNpbj4+QVtpXVtqXTsKCQljW2ldW2pdPTA7Cgl9Cn0KCglyZXAoaSwwLG4pewoJCXJlcChqLDAsbil7CgkJCWlmKEFbaV1bal0+MSkKCQkJewoKCQkJCXJlcChrLDAsbil7CgkJCQkJcmVwKGwsMCxuKXsKCQkJCQkJaWYoQVtpXVtqXSA9PSBBW2ldW2xdICtBW2tdW2pdKQoJCQkJCQkJe2NbaV1bal09MTt9CgkJCQkJCWVsc2UgY29udGludWU7CgkJCQkJfQoJCQkJfQoJCQl9CgkJCWVsc2Uge2NbaV1bal09MTt9CgkJfQoJfQoJYm9vbCBmbGFnPTA7CnJlcChpLDAsbil7CglyZXAoaiwwLG4pewoJCWlmKGNbaV1bal09PTApCgkJCWZsYWcgPTE7Cgl9Cn0KaWYoZmxhZz09MSkgY291dDw8IlllcyI8PGVuZGw7CmVsc2UgY291dDw8Ik5vIjw8ZW5kbDsKfQoKaW50IG1haW4oKXsKCWlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwoJY2luLnRpZSgwKTsKCWNvdXQudGllKDApOwoJaW50IHQ9MTsKCS8vY2luPj50OwoJd2hpbGUodC0tKXsKCQlzb2x2ZSgpOwoJfQoJcmV0dXJuIDA7Cn0KCgo=