Go: // 九九を出すだけ
package main
import (
	"fmt"
	"os"
	"bufio"
	"strconv"
	"sort"
)

var sc = bufio.NewScanner(os.Stdin)
var out = bufio.NewWriter(os.Stdout)

func main(){
	sc.Split(bufio.ScanWords)
	defer out.Flush()
	n := nextInt()
	for i:=0; i<n; i++{
	    data := nextInts(3)
	    sort.Ints(data)
	    if data[0]*data[0]+data[1]*data[1] == data[2]*data[2]{
	        fmt.Fprintln(out, "YES")
	    }else{
	        fmt.Fprintln(out, "NO")
	    }
	}
}

func next() string{
	sc.Scan()
	return sc.Text()
}

func nextInt() int{
	a, _ := strconv.Atoi(next())
	return a
}

func nextInts(n int) []int{
    a := make([]int, n)
    for i:=0; i<n; i++{
        a[i] = nextInt()
    }
    return a
}

Python: def main():
    n = int(input())
    for i in range(n):
        a, b, c=(int(input().split()))
        if a+b<=c or a+c<=b or b+c<=a:
            print("YES")
        else:
            print("NO")
            
main()

Python: # coding: utf-8
# Here your code !
n = int(input())

for _ in range(n):
    a = [int(i) ** 2 for i in input().split()]
    if max(a) == (sum(a) - max(a)):
        print("YES")
    else:
        print("NO")

Python: n = int(input())
for _ in range(n):
	edges = list(map(int, input().split()))
	if len(edges) == 0:
		break
	edges.sort()

	if edges[0] ** 2 + edges[1] ** 2 == edges[2] ** 2:
		print("YES")
	else:
		print("NO")

Python: N=int(input())
for i in range (1,N+1):
    a,b,c=map(int,input().split())
    x=max(a,b,c)
    y=min(a,b,c)
    z=a+b+c-x-y
    if x**2==y**2+z**2:
        print("YES")
    else:
        print("NO")

Python: N = input()
for i in range(N):
	l = []
	line = raw_input()
	l.append(int(line.split()[0]))
	l.append(int(line.split()[1]))
	l.append(int(line.split()[2]))
	l.sort()
	if l[0]*l[0]+l[1]*l[1]==l[2]*l[2]:
		print("YES")
	else:
		print("NO")

Python: from math import *


t = int(input())
l = []
for i in range(0,t):
    a, b, c = map(int, input().split())
    if pow(a,2)+pow(b,2)==pow(c,2):
        l.append("YES")
    else:
        l.append("NO")

for i in range(0,len(l)):
    print(l[i])

Python: N=int(input())
for i in range(N):
    a,b,c=map(int,input().split())
    A=a*a
    B=b*b
    C=c*c
   
   
    if a>b and a>c and A==B+C:
        print('YES')
    elif b>a and b>c and B==A+C:
        print('YES')
    elif c>a and c>b and C==A+B:
        print('YES')
    else:
        print('NO')

Python: N = int(input())
for i in range(N):
    l = list(map(int,input().split()))
    l.sort()
    if l[0]*l[0]+l[1]*l[1] == l[2]*l[2]: print("YES")
    else: print("NO")

Python: N=int(input())
triangle=[]

for i in range(N):
    triangle.append(list(map(int,input().split())))

for i in range(N):
    if pow(triangle[i][0],2)+pow(triangle[i][1],2)+pow(triangle[i][2],2)==2*pow(max(triangle[i]),2):
        print("YES")
    else:
        print("NO")

Python: n=int(input())
r=[sorted(list(map(int,input().split()))) for _ in range(n)]
for i in range(n):
    if r[i][0]**2+r[i][1]**2==r[i][2]**2:
        print('YES')
    else:
        print('NO')

Python: #-*-coding:utf-8-*-

def get_input():
    for i in range(int(input())):
        yield "".join(input())

#####end of def get_input()#####

if __name__ == "__main__":
    array = list(get_input())
    for i in range(len(array)):        
        a,b,c = array[i].split()
        if int(a)^2 + int(b)^2 == int(c)^2:
            print("YES")
        elif int(c)^2 + int(a)^2 == int(b)^2:
            print("YES")
        elif int(b)^2 + int(c)^2 == int(a)^2:
            print("YES")
        else:
            print("NO")

Python: n = int(input())

for i in range(n):
    l = list(map(int, line.split()))
    l.sort()
    if l[0]**2 + l[1]**2 == l[3]**2: print("YES")
    else: print("NO")

Python: N=int(input())
for i in range(N):
    a,b,c=map(int,input().split())
    if (a**2+b**2)==c**2 or (a**2+c**2)==b**2 or (c**2+b**2)==a**2:
        print('YES')
    else:
        print('NO')

Python: num = int(input())
for i in range (num):
    a=input().split()
    print( a[0]==a[1] and a[1]==a[2])

Python: n=int(input())
for i in range(n):
	A=[int(j) for j in input().split()]
	A.sort()
	if A[0]**2+A[1]**2==A[2]**2:
		print("YES")
	else:
		print("NO")

Python: N = int(input())
for i in range(N):
    a,b,c = map(int, input().split())
    A = a**2
    B = b**2
    C = c**2
    if A+B==C or A+C==B or B+C==A:
        print("YES")
    else:
        print("NO")

Python: n=int(input())
for i in range(n):
    a,b,c = input().split()
    x = int(a)
    y = int(b)
    z = int(c)
    p = [x,y,z]
    p.sort()
    if pow(p[0],2) + pow(p[1],2) == pow(p[2],2):
        print('YES')
    else:
        print('NO')

Python: n=int(input())
r=[0]*n
for i in range(n):
    r[i]=sorted(list(map(int,input().split())))
for i in range(n):
    print("YES" if r[i][0]**2+r[i][1]**2==r[i][2]**2 else "NO")

Python: import sys
input()
for e in sys.stdin:
    a, b, c = sorted(map(int, e.split()))
    if a**2 + b**2 == c**2:
        print('YES')
    else:
        print('NO')

Python: for i in range(int(raw_input())):a=sorted([int(x)**2 for x in raw_input().split()]);print ["NO","YES"][a[0]+a[1]==a[2]]

Python: N = int(input())
i = 0
while True:
    a = list((int(x)for x in input().split()))
    a.sort()
    i += 1
    if a[0]**2 + a[1]**2 == a[2]** 2:
        print("YES")
    else:
        print("NO")
    if i == N:
        break

Python: N = int(input())
lst = [list(map(int, input().split())) for _ in range(N)]
for i in lst:
    i.sort()
    if i[0] ** 2 + i[1] ** 2 == i[2] ** 2:
        print('YES')
    else:
        print('NO')

Python: import sys
input()
for e in sys.stdin:
 a,b,c=sorted(map(int,e.split()))
 print(['NO','YES'][a*a+b*b==c*c])

Python: N=int(input())
a=[0,0,0]
for i in range(N):
    a[0],a[1],a[2] = map(int, input().split())
    a.sort()
    if a[0]**2+a[1]**2 == a[2]**2:
        print("YES")
    else:
        print("NO")

Python: def main():
    n = int(input())
    for i in range(n):
        a=[int(x) for x in input().split()]
        a.sort()
        if a[0] ** 2 + a[1] ** 2 != a[2] ** 2:
            print("NO")
        else:
            print("YES")

main()

Python: #!/usr/bin/env python3
def right_triangle(edge):
    # a < b < c
    return (edge[0] ** 2 + edge[1] ** 2 == edge[2] ** 2)

n = int(input())
for i in range(n):
    edge = sorted([int(x) for x in input().split()])
    if right_triangle(edge):
        print("YES")
    else:
        print("NO")

Python: n=int(input())
for i in range(n):
    a,b,c = input().split()
    x = int(a)
    y = int(b)
    z = int(c)
    p = [a,b,c]
    p.sort()
    if pow(p[0],2) + pow(p[1],2) == pow(p[2],2):
        print('YES')
    else:
        print('NO')

Python: n = input()
for i in range(int(n)):
    a,b,c = list(map(int,input().split()))
    a,b,c = int(a),int(b),int(c)
    if a**2 + b**2 == c**2 or c**2 + a**2 == b**2 or b**2 + c**2 == a**2:
        print("YES")
    else:
        print("NO")

Python: for _ in range(int(input())):
    datasqr = [i ** 2 for i in sorted(list(map(int, input().split())))]
    print('YES' if sum(datasqr[:2]) == datasqr[-1] else 'NO')

Python: [print("YES" if x[0] + x[1] == x[2] else "NO") for x in [sorted([x * x for x in [int(i) for i in input().split(" ")]]) for _ in range(int(input()))]]

Python: import math
N=int(input())
for i in range(N):
    a,b,c=map(int, input().split())
    if c==math.sqrt(a**2+b**2) or b==math.sqrt(a**2+c**2) or a==math.sqrt(c**2+b**2):
        print("YES")
    else:
        print("NO")

Python: N = int(input())
for i in range(N):
    x,y,z = map(int,input().split())
    if x>y and x>z:
        s = y**2+z**2
        u = x**2
        if s==u:
            print("YES")
        else:
            print("NO")
    elif y>x and y>z:
        s = x**2+z**2
        u = y**2
        if s==u:
            print("YES")
        else:
            print("NO")
    else:
        s = x**2+y**2
        u = z**2
        if s==u:
            print("YES")
        else:
            print("NO")
    i += 1