Problem G. Matrix
```cpp
/*
对于一个坐标(x,y),影响到它的状态的只有当 当前flip(i,j),的i是x的因子,j是y的因子的时候,而当x,y中任何一个数有偶数个因子时,最终都回到0状态,所以当x,y都有奇数个因子时,坐标(x,y)最终为1 ,这时x,y都是平方数
所以应分别找比m,n,小的平方数的个数,相乘即为所求
sqrt(m),sqrt(n) 向下取整再相乘
P:乘积要用long long 存
*/
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e6+9;
int main(){
int t;
cin>>t;
while(t--){
ll n,m;
cin>>n>>m;
ll a=sqrt(n);
ll b=sqrt(m);
cout<<a*b<<endl;
}
return 0;
}