#include <iostream>
#include <vector>
using namespace std;
struct groups{
int a;
int b;
};
int gcd(int a, int b){
int commonDiv = 1;
vector<int> lDivs;
vector<int> bDivs;
for(int i=1; i<=((a>b)?a:b); i++){
if(a%i == 0){
if(a > b) bDivs.push_back(i);
else lDivs.push_back(i);
}
if(b%i == 0){
if(b > a) bDivs.push_back(i);
else lDivs.push_back(i);
}
}
for(int j=0; j<lDivs.size(); j++){
for(int k=0; k<bDivs.size(); k++){
if(lDivs[j] == bDivs[k] && lDivs[j] > commonDiv){
commonDiv = lDivs[j];
}
}
}
return commonDiv;
}
int main() {
int n;
cin >> n;
groups data[n];
int results[n];
for(int i=0; i<n; i++){
cin >> data[i].a >> data[i].b;
results[i]=(data[i].a*data[i].b)/gcd(data[i].a, data[i].b);
}
for(int result : results){
cout << result << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCBncm91cHN7CiAgICBpbnQgYTsKICAgIGludCBiOwp9OwoKaW50IGdjZChpbnQgYSwgaW50IGIpewogICAgCiAgICBpbnQgY29tbW9uRGl2ID0gMTsKICAgIAogICAgdmVjdG9yPGludD4gbERpdnM7CiAgICB2ZWN0b3I8aW50PiBiRGl2czsKICAgIAogICAgCiAgICBmb3IoaW50IGk9MTsgaTw9KChhPmIpP2E6Yik7IGkrKyl7CgogICAgICAgIGlmKGElaSA9PSAwKXsKICAgICAgICAgICAgaWYoYSA+IGIpIGJEaXZzLnB1c2hfYmFjayhpKTsKICAgICAgICAgICAgZWxzZSBsRGl2cy5wdXNoX2JhY2soaSk7CiAgICAgICAgfSAKICAgICAgICBpZihiJWkgPT0gMCl7CiAgICAgICAgICAgIGlmKGIgPiBhKSBiRGl2cy5wdXNoX2JhY2soaSk7CiAgICAgICAgICAgIGVsc2UgbERpdnMucHVzaF9iYWNrKGkpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgZm9yKGludCBqPTA7IGo8bERpdnMuc2l6ZSgpOyBqKyspewogICAgICAgIGZvcihpbnQgaz0wOyBrPGJEaXZzLnNpemUoKTsgaysrKXsKICAgICAgICAgICAgaWYobERpdnNbal0gPT0gYkRpdnNba10gJiYgbERpdnNbal0gPiBjb21tb25EaXYpewogICAgICAgICAgICAgICAgY29tbW9uRGl2ID0gbERpdnNbal07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIGNvbW1vbkRpdjsKfQoKaW50IG1haW4oKSB7CiAgICAKICAgIGludCBuOwogICAgCiAgICBjaW4gPj4gbjsKICAgIAogICAgZ3JvdXBzIGRhdGFbbl07CiAgICBpbnQgcmVzdWx0c1tuXTsKICAgIAogICAgCiAgICBmb3IoaW50IGk9MDsgaTxuOyBpKyspewogICAgICAgIGNpbiA+PiBkYXRhW2ldLmEgPj4gZGF0YVtpXS5iOwogICAgICAgIAogICAgICAgIHJlc3VsdHNbaV09KGRhdGFbaV0uYSpkYXRhW2ldLmIpL2djZChkYXRhW2ldLmEsIGRhdGFbaV0uYik7CiAgICB9CiAgICAKICAgIGZvcihpbnQgcmVzdWx0IDogcmVzdWx0cyl7CiAgICAgICAgY291dCA8PCByZXN1bHQgPDwgZW5kbDsKICAgIH0KICAgIAogICAgCiAgICByZXR1cm4gMDsKfQ==