//import java.io.*;
import java.util.*;
import static java.lang.Math.*;
class Main implements Runnable{
/*
static String ReadLn(int maxLength){ // utility function to read from stdin,
// Provided by Programming-challenges, edit for style only
byte line[] = new byte [maxLength];
int length = 0;
int input = -1;
try{
while (length < maxLength){//Read until maxlength
input = System.in.read();
if ((input < 0) || (input == '\n')) break; //or until end of line input
line [length++] += input;
}
if ((input < 0) && (length == 0)) return null; // eof
return new String(line, 0, length);
}catch (IOException e){
return null;
}
}*/
public static void main(String args[])
{
Main worker = new Main();
worker.run();
}
public void run() {
new Worker().run();
}
}
class Worker implements Runnable{
private static void DoWork(long cnt)
{
long mid = (long)(sqrt((double)cnt));
if ((mid * mid) == cnt)
System.out.println("yes");
else
System.out.println("no");
}
public void run(){
Scanner in = new Scanner(System.in);
while (true)
{
long cnt = in.nextLong();
if (cnt == 0)
return;
DoWork(cnt);
}
}
}