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
# sys.stdin = open('input.txt','r')

a,b = map(int,raw_input().split())
c1 = []
c2 = []


h = a*a+b*b

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

for i in xrange(1,a+1):
    for j in xrange(1,a+1):
        if i*i + j*j == a*a:
            c1.append([i,j])

for i in xrange(1,b+1):
    for j in xrange(-b-1,-1):
        if i*i + j*j == b*b:
           c2.append([i,j])
for i in c1:
    for j in c2:
        if i[0] != j[0] and i[1] != j[1]:
            if getDistance(i,j) == h:
                print('YES')
                print('0 0')
                print(i[0],i[1])
                print(j[0],j[1])
                exit(0)
print('NO')
