#include <iostream>
#include <complex>
#include <cmath>
#define EPS 0.00000001
using namespace std;

typedef complex<double> point;

double dot(point a,point b){
	return (a*conj(b)).real();
}

int main(void){
	point a[4];
	double x,y;
	while(cin>>x>>y){
		a[0]=point(x,y);
		cin>>x>>y;
		a[1]=point(x,y);
		cin>>x>>y;
		a[2]=point(x,y);
		cin>>x>>y;
		a[3]=point(x,y);
		point AB=a[1]-a[0];
		point CD=a[3]-a[2];
		// if(fabs(dot(AB,CD)<EPS))cout<<"YES"<<endl;
		if(fabs(dot(AB,CD)==0))cout<<"YES"<<endl;
		else cout<<"NO"<<endl;
		// cout<<dot(AB,CD)<<endl;
	}
	return 0;
}