import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    }
} import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    } main {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int a = sc.nextInt(); a sc.nextInt() sc.nextInt sc int b = sc.nextInt(); b sc.nextInt() sc.nextInt sc int c; c if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        } b < 10 b 10 {
            c = 10 * a + b;
        } c = 10 * a + b c 10 * a + b 10 * a 10 a b if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        } b < 100 b 100 {
            c = 100 * a + b;
        } c = 100 * a + b c 100 * a + b 100 * a 100 a b {
            c = 1000 * a + b;
        } c = 1000 * a + b c 1000 * a + b 1000 * a 1000 a b boolean flag = false; flag false int target = 1; target 1 for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        } int i = 1; int i = 1; i 1 target <= c target c i++ i++ i {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        } {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        } target = (int) Math.pow(i, 2) target (int) Math.pow(i, 2) Math.pow Math i 2 if (target == c) {
                flag = true;
            } target == c target c {
                flag = true;
            } flag = true flag true System.out.println(flag ? "Yes" : "No") System.out.println System.out System System.out flag ? "Yes" : "No" flag "Yes" "No" String[] args args public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    }
} public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    }
} Main
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c;
        if (b < 10) {
            c = 10 * a + b;
        } else if (b < 100) {
            c = 100 * a + b;
        } else {
            c = 1000 * a + b;
        }
        boolean flag = false;
        int target = 1;
        for (int i = 1; target <= c; i++) {
            target = (int) Math.pow(i, 2);
            if (target == c) {
                flag = true;
            }
        }
        System.out.println(flag ? "Yes" : "No");

    }
}