import java.util.*;

public class Main {

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	}
	
	public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	}
	
	
	
	

	
}  import java.util.*; util.* java public class Main {

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	}
	
	public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	}
	
	
	
	

	
} Main public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	} main {
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int dataSize = Integer.parseInt(sc.nextLine()); dataSize Integer.parseInt(sc.nextLine()) Integer.parseInt Integer sc.nextLine() sc.nextLine sc int[][] data = new int[dataSize][3]; data new int[dataSize][3] dataSize 3 for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		} int i = 0; int i = 0; i 0 i < dataSize i dataSize ++i ++i i {
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		} {
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		} String[] splitted = sc.nextLine().split("\\s+"); splitted sc.nextLine().split("\\s+") sc.nextLine().split sc.nextLine() sc.nextLine sc "\\s+" data[i][0] = Integer.parseInt(splitted[0]) data[i][0] data[i] data i 0 Integer.parseInt(splitted[0]) Integer.parseInt Integer splitted[0] splitted 0 data[i][1] = Integer.parseInt(splitted[1]) data[i][1] data[i] data i 1 Integer.parseInt(splitted[1]) Integer.parseInt Integer splitted[1] splitted 1 data[i][2] = Integer.parseInt(splitted[2]) data[i][2] data[i] data i 2 Integer.parseInt(splitted[2]) Integer.parseInt Integer splitted[2] splitted 2 for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		} int i = 0; int i = 0; i 0 i < dataSize i dataSize ++i ++i i {
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		} {
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		} if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO"); IsRight(data[i][0],data[i][1],data[i][2]) IsRight data[i][0] data[i] data i 0 data[i][1] data[i] data i 1 data[i][2] data[i] data i 2 System.out.println("YES") System.out.println System.out System System.out "YES" System.out.println("NO") System.out.println System.out System System.out "NO" String[] args args public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	} IsRight {
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	} if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false; (a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b) (a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b) (a*a == b*b + c*c) a*a a a b*b + c*c b*b b b c*c c c (b*b == a*a + c*c ) b*b b b a*a + c*c a*a a a c*c c c (c*c == a*a + b*b) c*c c c a*a + b*b a*a a a b*b b b return true; true return false; false int a a int b b int c c public class Main {

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	}
	
	public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	}
	
	
	
	

	
} public class Main {

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	}
	
	public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	}
	
	
	
	

	
} Main
import java.util.*;

public class Main {

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		int dataSize = Integer.parseInt(sc.nextLine());
		int[][] data = new int[dataSize][3];
	
		for(int i = 0; i < dataSize; ++i)
		{
			String[] splitted = sc.nextLine().split("\\s+");
			data[i][0] = Integer.parseInt(splitted[0]);
			data[i][1] = Integer.parseInt(splitted[1]);
			data[i][2] = Integer.parseInt(splitted[2]);
		}
		
		for(int i = 0; i < dataSize; ++i)
		{
			if(IsRight(data[i][0],data[i][1],data[i][2]))
				System.out.println("YES");
			else
				System.out.println("NO");
		}
		
	}
	
	public static boolean IsRight(int a, int b, int c)
	{
		if((a*a == b*b + c*c) || (b*b == a*a + c*c ) || (c*c == a*a + b*b))
			return true;
		else 
			return false;	
	}
	
	
	
	

	
} 