
import java.util.ArrayList;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	}
	
	private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	}
} import java.util.ArrayList; ArrayList java.util import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	}
	
	private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	} main {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) ArrayList<String> result = new ArrayList<String>(); result new ArrayList<String>() int num = sc.nextInt(); num sc.nextInt() sc.nextInt sc for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		} int i = 0; int i = 0; i 0 i < num i num i++ i++ i {
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		} {
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		} result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt())) result.add result isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()) isTriangle sc.nextInt() sc.nextInt sc sc.nextInt() sc.nextInt sc sc.nextInt() sc.nextInt sc for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		} int i = 0; int i = 0; i 0 i < result.size() i result.size() result.size result i++ i++ i {
			System.out.println(result.get(i));
		} {
			System.out.println(result.get(i));
		} System.out.println(result.get(i)) System.out.println System.out System System.out result.get(i) result.get result i String[] args args private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	} isTriangle {
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	} int x2 = x * x; x2 x * x x x int y2 = y * y; y2 y * y y y int z2 = z * z; z2 z * z z z if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		} x2 + y2 == z2 x2 + y2 x2 y2 z2 {
			return "YES";
		} return "YES"; "YES" if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		} y2 + z2 == x2 y2 + z2 y2 z2 x2 {
			return "YES";
		} return "YES"; "YES" if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		} z2 + x2 == y2 z2 + x2 z2 x2 y2 {
			return "YES";
		} return "YES"; "YES" {
			return "NO";
		} return "NO"; "NO" int x x int y y int z z public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	}
	
	private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	}
} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	}
	
	private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	}
} Main

import java.util.ArrayList;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> result = new ArrayList<String>();
		
		int num = sc.nextInt();
		

		for(int i = 0; i < num; i++){
			result.add(isTriangle(sc.nextInt(), sc.nextInt(), sc.nextInt()));
		}
		
		for(int i = 0; i < result.size(); i++){
			System.out.println(result.get(i));
		}
	}
	
	private static String isTriangle(int x, int y, int z){
		int x2 = x * x;
		int y2 = y * y;
		int z2 = z * z;
		
		if(x2 + y2 == z2){
			return "YES";
		}
		else if(y2 + z2 == x2){
			return "YES";
		}
		else if(z2 + x2 == y2){
			return "YES";
		}
		else{
			return "NO";
		}
	}
}