#include #include using mint = atcoder::static_modint<998244353>; //using mint = atcoder::static_modint<1000000007>; using namespace std; using namespace atcoder; using ld = long double; using ll = long long; #define mp(a,b) make_pair(a,b) #define rep(i,s,n) for(int i=s; i dx{1,0,-1,0},dy{0,1,0,-1}; ll inner(pairx,pairy,pairz){ return (x.first-z.first)*(y.first-z.first)+(x.second-z.second)*(y.second-z.second); } ll d(pairx,pairy){ return (x.first-y.first)*(x.first-y.first)+(x.second-y.second)*(x.second-y.second); } int main(){ vector> A(4); for(auto&[x,y]:A)cin >> x >> y; ll l=inner(A[0],A[1],A[2]); ll r=inner(A[0],A[1],A[3]); l*=l,r*=r; l*=d(A[0],A[3]); l*=d(A[1],A[3]); r*=d(A[0],A[2]); r*=d(A[1],A[2]); if(l==r)cout << "YES"; else cout << "NO"; }