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 Scala (judge verdict: Accepted)

  /**
    * http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0003
    */
  object Main {
    def main(args: Array[String]): Unit = {
      val N = io.StdIn.readInt()
      Iterator.continually(io.StdIn.readLine()).takeWhile(_ != null).take(N)
        .map(_.split(" +").map(_.toInt) match { case Array(a, b, c) => (a, b, c) })
        .map { case (a, b, c) => isRightTriangle(a, b, c) }
        .map(if (_) "YES" else "NO")
        .foreach(println)
    }
  
    def isRightTriangle(x: Int, y: Int, z: Int): Boolean = {
      val (a, b, c) = Seq(x, y, z).sorted match {
        case Seq(_a, _b, _c) => (_a, _b, _c)
      }
      math.pow(a.toDouble, 2) + math.pow(b.toDouble, 2) == math.pow(c.toDouble, 2)
    }
  
  }