import java.util.Scanner;

public class Main{
	static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	}

	public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	}
} import java.util.Scanner; Scanner java.util public class Main{
	static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	}

	public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	}
} Main static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	} rightA {
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	} int max = a; max a if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		} b > a b a {
			int temp = a;
			a = b;
			b = temp;
		} int temp = a; temp a a = b a b b = temp b temp if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		} c > a c a {
			int temp = a;
			a = c;
			c = temp;
		} int temp = a; temp a a = c a c c = temp c temp if( a*a == b*b + c*c )
			return true;
		else return false; a*a == b*b + c*c a*a a a b*b + c*c b*b b b c*c c c return true; true return false; false int a a int b b int c c public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	} main {
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	} Scanner stdIn = new Scanner(System.in); stdIn new Scanner(System.in) int n = stdIn.nextInt(); n stdIn.nextInt() stdIn.nextInt stdIn String[] str = new String[n+1]; str new String[n+1] n+1 n 1 String[][] s = new String[n][3]; s new String[n][3] n 3 int[] a = new int[n]; a new int[n] n int[] b = new int[n]; b new int[n] n int[] c = new int[n]; c new int[n] n for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		} int i = 0; int i = 0; i 0 i < n+1 i n+1 n 1 i++ i++ i {
			str[i] = stdIn.nextLine();
		} {
			str[i] = stdIn.nextLine();
		} str[i] = stdIn.nextLine() str[i] str i stdIn.nextLine() stdIn.nextLine stdIn for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		} {
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		} s[i] = str[i+1].split(" ", 3) s[i] s i str[i+1].split(" ", 3) str[i+1].split str[i+1] str i+1 i 1 " " 3 a[i] = Integer.parseInt(s[i][0]) a[i] a i Integer.parseInt(s[i][0]) Integer.parseInt Integer s[i][0] s[i] s i 0 b[i] = Integer.parseInt(s[i][1]) b[i] b i Integer.parseInt(s[i][1]) Integer.parseInt Integer s[i][1] s[i] s i 1 c[i] = Integer.parseInt(s[i][2]) c[i] c i Integer.parseInt(s[i][2]) Integer.parseInt Integer s[i][2] s[i] s i 2 for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		} {
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		} if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO"); rightA(a[i], b[i], c[i]) rightA a[i] a i b[i] b i c[i] c i {
				System.out.println("YES");
			} 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 class Main{
	static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	}

	public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	}
} public class Main{
	static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	}

	public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	}
} Main
import java.util.Scanner;

public class Main{
	static boolean rightA(int a, int b, int c){
		int max = a;
		if( b > a ){
			int temp = a;
			a = b;
			b = temp;
		}
		if( c > a ){
			int temp = a;
			a = c;
			c = temp;
		}
		
		if( a*a == b*b + c*c )
			return true;
		else return false;
	}

	public static void main(String[] args){
		Scanner stdIn = new Scanner(System.in);
		int n = stdIn.nextInt();
		
		String[] str = new String[n+1];
		String[][] s = new String[n][3];
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		for(int i = 0; i < n+1; i++){
			str[i] = stdIn.nextLine();
		}
		for(int i = 0; i < n; i++){
			s[i] = str[i+1].split(" ", 3);
			a[i] = Integer.parseInt(s[i][0]);
			b[i] = Integer.parseInt(s[i][1]);
			c[i] = Integer.parseInt(s[i][2]);
		}
		
		for(int i = 0; i < n; i++){
			if( rightA(a[i], b[i], c[i]) ){
				System.out.println("YES");
			}
			else 
				System.out.println("NO");
		}
	}
}