#include <iostream>
#include <cstdio>
#include <complex>
#define EPS 1e-10
#define EQ(a, b) (abs((a) - (b)) < EPS)
using namespace std;
typedef complex<double> P;

double dot(P a, P b) {
    return(a.real() * b.real() + a.imag() * b.imag());
}

int isOrthogonal(P a, P b, P c, P d) {
    return(EQ(dot(a - b, c - d), 0.0));
}

int main(void) {
    double xa, ya, xb, yb, xc, yc, xd, yd;
    while(cin >> xa >> ya >> xb >> yb >> xc >> yc >> xd >> yd) {
        P a(xa, ya), b(xb, yb), c(xc, yc), d(xd, yd);
        if(isOrthogonal(a, b, c, d)) cout << "YES" << endl;
        else                         cout << "NO"  << endl;
    }
    return(0);
}