There is a right triangle with legs of length *a* and *b*. Your task is to determine whether it is possible to locate the triangle on the plane in such a way that none of its sides is parallel to the coordinate axes. All the vertices must have integer coordinates. If there exists such a location, you have to output the appropriate coordinates of vertices.
The first line contains two integers *a*, *b* (1 ≤ *a*, *b* ≤ 1000), separated by a single space.
import sys
a, b = [int(x) for x in input().split()]
# search for triples with a
def get_trips(a):
	trips = []
	for x in range(1,a):
		y = (a**2 - x**2) ** 0.5
		if int(y) == y:
			trips.append((x, int(y)))
	return trips
a_trips = get_trips(a)
b_trips = get_trips(b)
for ax, ay in a_trips:
	for bx, by in b_trips:
		if ax != bx and ax * bx - ay * by == 0:
			# orthogonal!
			print('YES')
			print(ax, ay)
			print(bx, -by)
			print(0, 0)
			sys.exit()
print('NO')
	 	 		   	 	 		  	 	  	   	 			