
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

class Main {
	Scanner sc = new Scanner(System.in);

	public void run() {
		int N=sc.nextInt();
		
		while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		}
	}

	public static void main(String[] args) {
		new Main().run();
	}

	public static void pr(Object o) {
		System.out.print(o);
	}

	public static void ln(Object o) {
		System.out.println(o);
	}

	public static void ln() {
		System.out.println();
	}
} import java.util.Arrays; Arrays java.util import java.util.Comparator; Comparator java.util import java.util.Scanner; Scanner java.util class Main {
	Scanner sc = new Scanner(System.in);

	public void run() {
		int N=sc.nextInt();
		
		while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		}
	}

	public static void main(String[] args) {
		new Main().run();
	}

	public static void pr(Object o) {
		System.out.print(o);
	}

	public static void ln(Object o) {
		System.out.println(o);
	}

	public static void ln() {
		System.out.println();
	}
} Main Scanner sc = new Scanner(System.in); sc new Scanner(System.in) public void run() {
		int N=sc.nextInt();
		
		while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		}
	} run {
		int N=sc.nextInt();
		
		while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		}
	} int N=sc.nextInt(); N sc.nextInt() sc.nextInt sc while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		} N--!=0 N-- N 0 {
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		} int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			}; edge new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			} Arrays.sort(edge) Arrays.sort Arrays edge ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO") ln (edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO" (edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1]) edge[2]*edge[2] edge[2] edge 2 edge[2] edge 2 edge[0]*edge[0]+edge[1]*edge[1] edge[0]*edge[0] edge[0] edge 0 edge[0] edge 0 edge[1]*edge[1] edge[1] edge 1 edge[1] edge 1 "YES" "NO" public static void main(String[] args) {
		new Main().run();
	} main {
		new Main().run();
	} new Main().run() new Main().run new Main() String[] args args public static void pr(Object o) {
		System.out.print(o);
	} pr {
		System.out.print(o);
	} System.out.print(o) System.out.print System.out System System.out o Object o o public static void ln(Object o) {
		System.out.println(o);
	} ln {
		System.out.println(o);
	} System.out.println(o) System.out.println System.out System System.out o Object o o public static void ln() {
		System.out.println();
	} ln {
		System.out.println();
	} System.out.println() System.out.println System.out System System.out

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

class Main {
	Scanner sc = new Scanner(System.in);

	public void run() {
		int N=sc.nextInt();
		
		while(N--!=0){
			int[] edge=new int[]{
					sc.nextInt(),sc.nextInt(),sc.nextInt()
			};
			Arrays.sort(edge);
			ln((edge[2]*edge[2]==edge[0]*edge[0]+edge[1]*edge[1])?"YES":"NO");
		}
	}

	public static void main(String[] args) {
		new Main().run();
	}

	public static void pr(Object o) {
		System.out.print(o);
	}

	public static void ln(Object o) {
		System.out.println(o);
	}

	public static void ln() {
		System.out.println();
	}
}