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.
from math import *
a,b=map(int,input().split())
def gen(n):
    for x in range(1,n):
        y = round(sqrt((n+x)*(n-x)))
        if x*x+y*y == n*n:
            yield (x,y)
            yield (x,-y)
            yield (-x,y)
            yield (-x,-y)
def solve():
    for u in gen(a):
        for v in gen(b):
            if u[0]*v[0]+u[1]*v[1]==0:
                print("YES")
                print(u[0],u[1])
                print(v[0],v[1])
                print(0,0)
                return
    print("NO")
solve()
