#include #define N 1000000 using namespace std; int T,n,m; int miu[N+5],p[N+5],prime[N+5],cnt; long long ans[N+5],add1,add2,Ans; int main(){ miu[1]=1; for(int i=2;i<=N;i++){ if(p[i]==0){ miu[i]=-1; prime[++cnt]=i; } for(int j=1;j<=cnt&&i*prime[j]<=N;j++){ p[i*prime[j]]=1; if(i%prime[j]==0){ miu[i*prime[j]]=0; break; } miu[i*prime[j]]=-miu[i]; } } scanf("%d",&T); while(T--){ scanf("%d %d",&n,&m); Ans=0; if(n>m) swap(n,m); memset(ans,0,sizeof(ans)); for(int i=1;i<=n;i++){ for(int j=1;i*j<=n;j++){ ans[i*j]+=miu[i]*miu[j]; } } for(int Ti=1;Ti<=n;Ti++){ add1=0,add2=0; for(int i=1;i*Ti<=n;i++) add1+=miu[i*Ti]; for(int i=1;i*Ti<=m;i++) add2+=miu[i*Ti]; Ans+=add1*add2*ans[Ti]; } cout<