Problem:
Is it a Right Triangle?

Write a program which judges wheather given length of three side form a right triangle. Print "YES" if the given sides (integers) form a right triangle, "NO" if not so.

Input

Input consists of several data sets. In the first line, the number of data set, N is given. Then, N lines follow, each line corresponds to a data set. A data set consists of three integers separated by a single space.

Constraints

1 ≤ length of the side ≤ 1,000

N ≤ 1,000

Output

For each data set, print "YES" or "NO".

Sample Input

3
4 3 5
4 3 6
8 8 8

Output for the Sample Input

YES
NO
NO

Solution in C# (judge verdict: Accepted)

using System.Linq;
using System.Collections.Generic;
using System;

namespace AOJ
{
    class Program
    {
        static void Main(string[] args)
        {
            var result = Volume0.IsItARightTriangle();
            System.Diagnostics.Trace.WriteLine(result);
            Console.WriteLine(result);
        }
    }

    public static class Volume0
    {
        public static string IsItARightTriangle()
        {
            var count = int.Parse(Console.ReadLine());
            var result = new List<string>();
            foreach (var i in Enumerable.Range(1, count))
            {
                var inputs = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).OrderByDescending(x => x).ToArray();
                if (Math.Pow(inputs[0], 2) == Math.Pow(inputs[1], 2) + Math.Pow(inputs[2], 2))
                {
                    result.Add("YES");
                }
                else
                {
                    result.Add("NO");
                }
                
            }
            return string.Join("\n", result.ToArray());
        }
    }
}