#include <iostream>
#include <string>

using namespace std;

int main() {
	string s, t;
	cin >> s >> t;
	int x = stoi(s + t);
	for (int i=1; i <= 1000; ++i) {
		if (i*i == x) {
			cout << "Yes";
			return 0;
		}
	}
	cout << "No";
}
### Prompt

Please provide a CPP coded solution 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 <iostream>
#include <string>

using namespace std;

int main() {
	string s, t;
	cin >> s >> t;
	int x = stoi(s + t);
	for (int i=1; i <= 1000; ++i) {
		if (i*i == x) {
			cout << "Yes";
			return 0;
		}
	}
	cout << "No";
}
```