import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;


class Main{
	public static void main(String[] args)throws IOException{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String name=br.readLine();
		int kaz=Integer.parseInt(name);
		int num;
		int compare;

		int[] a=new int[3];
		int big;
		int i=0;

		for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		}
	}
} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.StringTokenizer; StringTokenizer java.util class Main{
	public static void main(String[] args)throws IOException{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String name=br.readLine();
		int kaz=Integer.parseInt(name);
		int num;
		int compare;

		int[] a=new int[3];
		int big;
		int i=0;

		for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		}
	}
} Main public static void main(String[] args)throws IOException{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String name=br.readLine();
		int kaz=Integer.parseInt(name);
		int num;
		int compare;

		int[] a=new int[3];
		int big;
		int i=0;

		for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		}
	} main {
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String name=br.readLine();
		int kaz=Integer.parseInt(name);
		int num;
		int compare;

		int[] a=new int[3];
		int big;
		int i=0;

		for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		}
	} BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) String name=br.readLine(); name br.readLine() br.readLine br int kaz=Integer.parseInt(name); kaz Integer.parseInt(name) Integer.parseInt Integer name int num; num int compare; compare int[] a=new int[3]; a new int[3] 3 int big; big int i=0; i 0 for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		} int j=0; int j=0; j 0 j<kaz j kaz j++ j++ j {
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		} {
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		} name=br.readLine() name br.readLine() br.readLine br try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			} catch(Exception e){
				System.exit(0);
			} Exception e {
				System.exit(0);
			} System.exit(0) System.exit System 0 {
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			} StringTokenizer st=new StringTokenizer(name," "); st new StringTokenizer(name," ") while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     } st.hasMoreTokens() st.hasMoreTokens st {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     } a[i]=Integer.parseInt(st.nextToken()) a[i] a i Integer.parseInt(st.nextToken()) Integer.parseInt Integer st.nextToken() st.nextToken st i++ i i=0 i 0 a[0]*=a[0] a[0] a 0 a[0] a 0 a[1]*=a[1] a[1] a 1 a[1] a 1 a[2]*=a[2] a[2] a 2 a[2] a 2 big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2]))) big Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2]))) Math.max Math (Math.max(a[0], a[1])) Math.max Math a[0] a 0 a[1] a 1 (Math.max(a[0], a[2])) Math.max Math a[0] a 0 a[2] a 2 if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} big==a[0] big a[0] a 0 {
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					} a[0]==a[1]+a[2] a[0] a 0 a[1]+a[2] a[1] a 1 a[2] a 2 {
						System.out.println("YES");
					} System.out.println("YES") System.out.println System.out System System.out "YES" {
						System.out.println("NO");
					} System.out.println("NO") System.out.println System.out System System.out "NO" if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} big==a[1] big a[1] a 1 {
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					} a[1]==a[2]+a[0] a[1] a 1 a[2]+a[0] a[2] a 2 a[0] a 0 {
						System.out.println("YES");
					} System.out.println("YES") System.out.println System.out System System.out "YES" {
						System.out.println("NO");
					} System.out.println("NO") System.out.println System.out System System.out "NO" if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} big==a[2] big a[2] a 2 {
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				} if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					} a[2]==a[1]+a[0] a[2] a 2 a[1]+a[0] a[1] a 1 a[0] a 0 {
						System.out.println("YES");
					} System.out.println("YES") System.out.println System.out System System.out "YES" {
						System.out.println("NO");
					} System.out.println("NO") System.out.println System.out System System.out "NO" a[0]=0 a[0] a 0 0 a[1]=0 a[1] a 1 0 a[2]=0 a[2] a 2 0 String[] args args
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;


class Main{
	public static void main(String[] args)throws IOException{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		String name=br.readLine();
		int kaz=Integer.parseInt(name);
		int num;
		int compare;

		int[] a=new int[3];
		int big;
		int i=0;

		for(int j=0; j<kaz; j++){
			name=br.readLine();
			try{
				StringTokenizer st=new StringTokenizer(name," ");
			     while (st.hasMoreTokens()) {
			    	 a[i]=Integer.parseInt(st.nextToken());
			    	 i++;
			     }i=0;
			     a[0]*=a[0]; a[1]*=a[1]; a[2]*=a[2];
				big = Math.max((Math.max(a[0], a[1])),(Math.max(a[0], a[2])));

				if(big==a[0]){
					if(a[0]==a[1]+a[2]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[1]){
					if(a[1]==a[2]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				else if(big==a[2]){
					if(a[2]==a[1]+a[0]){
						System.out.println("YES");
					}
					else{
						System.out.println("NO");
					}
				}

				a[0]=0;
				a[1]=0;
				a[2]=0;


			}

			catch(Exception e){
				System.exit(0);
			}
		}
	}
}