Problem: Arpa is taking a geometry exam. Here is the last problem of the exam.

You are given three points a, b, c.

Find a point and an angle such that if we rotate the page around the point by the angle, the new position of a is the same as the old position of b, and the new position of b is the same as the old position of c.

Arpa is doubting if the problem has a solution or not (i.e. if there exists a point and an angle satisfying the condition). Help Arpa determine if the question has a solution or not.

Input

The only line contains six integers ax, ay, bx, by, cx, cy (|ax|, |ay|, |bx|, |by|, |cx|, |cy| ≤ 109). It's guaranteed that the points are distinct.

Output

Print "Yes" if the problem has a solution, "No" otherwise.

You can print each letter in any case (upper or lower).

Examples

Input

0 1 1 1 1 0


Output

Yes


Input

1 1 0 0 1000 1000


Output

No

Note

In the first sample test, rotate the page around (0.5, 0.5) by <image>.

In the second sample test, you can't find any solution.

Solution (in PYTHON):

Solution:
array=[]

def dist(a,b):
	return (a[0]-b[0])**2+(a[1]-b[1])**2

def ismid(a,b,c):
	if a[0]+c[0]==2*b[0] and a[1]+c[1]==2*b[1]:
		return True
	else:
		return False

# n=int(raw_input())  
str= raw_input()
array=map(int,str.split(" "))
a=(array[0],array[1])
b=(array[2],array[3])
c=(array[4],array[5])

if dist(a,b)==dist(b,c) and (not ismid(a,b,c)):
	print "Yes"
else:
	print "No"