#include <cstdio>
#include <cmath>
using namespace std;
int len = 10, a, b;
int main() {
	scanf("%d%d", &a, &b);
	while (len <= b) len *= 10;
	a = a * len + b;
	b = sqrt(a);
	if (b * b == a) puts("Yes");
	else puts("No");
}
### Prompt

Develop a solution in cpp to the problem described below:

AtCoDeer the deer has found two positive integers, a and b. Determine whether the concatenation of a and b in this order is a square number.

Constraints

* 1 ≤ a,b ≤ 100
* a and b are integers.

Input

Input is given from Standard Input in the following format:


a b


Output

If the concatenation of a and b in this order is a square number, print `Yes`; otherwise, print `No`.

Examples

Input

1 21


Output

Yes


Input

100 100


Output

No


Input

12 10


Output

No

### Response

```cpp
#include <cstdio>
#include <cmath>
using namespace std;
int len = 10, a, b;
int main() {
	scanf("%d%d", &a, &b);
	while (len <= b) len *= 10;
	a = a * len + b;
	b = sqrt(a);
	if (b * b == a) puts("Yes");
	else puts("No");
}
```