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

public class Main {

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	}

	public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	}

} 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 public class Main {

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	}

	public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	}

} Main public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	} main {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	} BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) String str; str StringTokenizer st1; st1 int[] tri = new int[3]; tri new int[3] 3 str=br.readLine() str br.readLine() br.readLine br int count=Integer.parseInt(str); count Integer.parseInt(str) Integer.parseInt Integer str for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		} int i=0; int i=0; i 0 i<count i count i++ i++ i {
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		} {
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		} st1=new StringTokenizer(br.readLine()," ") st1 new StringTokenizer(br.readLine()," ") tri[0]=Integer.parseInt(st1.nextToken()) tri[0] tri 0 Integer.parseInt(st1.nextToken()) Integer.parseInt Integer st1.nextToken() st1.nextToken st1 tri[1]=Integer.parseInt(st1.nextToken()) tri[1] tri 1 Integer.parseInt(st1.nextToken()) Integer.parseInt Integer st1.nextToken() st1.nextToken st1 tri[2]=Integer.parseInt(st1.nextToken()) tri[2] tri 2 Integer.parseInt(st1.nextToken()) Integer.parseInt Integer st1.nextToken() st1.nextToken st1 sortTri(tri) sortTri tri if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			} tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2] tri[0]*tri[0]+tri[1]*tri[1] tri[0]*tri[0] tri[0] tri 0 tri[0] tri 0 tri[1]*tri[1] tri[1] tri 1 tri[1] tri 1 tri[2]*tri[2] tri[2] tri 2 tri[2] tri 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" String[] args args public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	} sortTri {
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	} int tmp; tmp for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		} int i=0; int i=0; i 0 i<num.length-1 i num.length-1 num.length num num.length 1 i++ i++ i {
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		} {
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		} for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			} int j=i+1; int j=i+1; j i+1 i 1 j<num.length j num.length num num.length j++ j++ j {
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			} {
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			} if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				} num[i]>num[j] num[i] num i num[j] num j {
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				} tmp=num[i] tmp num[i] num i num[i]=num[j] num[i] num i num[j] num j num[j]=tmp num[j] num j tmp int[] num num public class Main {

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	}

	public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	}

} public class Main {

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	}

	public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	}

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

public class Main {

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str;
		StringTokenizer st1;
		int[] tri = new int[3];
		
		str=br.readLine();

		int count=Integer.parseInt(str);


		for(int i=0;i<count;i++){
			st1=new StringTokenizer(br.readLine()," ");
			tri[0]=Integer.parseInt(st1.nextToken());
			tri[1]=Integer.parseInt(st1.nextToken());
			tri[2]=Integer.parseInt(st1.nextToken());
			sortTri(tri);
			if(tri[0]*tri[0]+tri[1]*tri[1] == tri[2]*tri[2]){
				System.out.println("YES");
			}else{
				System.out.println("NO");
			}
		}


	}

	public static void sortTri(int[] num){
		int tmp;
		for(int i=0;i<num.length-1;i++){
			for(int j=i+1;j<num.length;j++){
				if(num[i]>num[j]){
					tmp=num[i];
					num[i]=num[j];
					num[j]=tmp;
				}
			}
		}
	}

}