import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
List<Integer> results = new ArrayList<>();
int T = Integer.parseInt(bufferedReader.readLine());
int A = 0; int B = 0; int GCD = 0;
for(int i = 0; i < T; i++) {
StringTokenizer stringTokenizer = new StringTokenizer(bufferedReader.readLine());
A = Integer.parseInt(stringTokenizer.nextToken());
B = Integer.parseInt(stringTokenizer.nextToken());
GCD = gcd(A,B);
results.add(A*B/GCD);
}
bufferedReader.close();
for(int result: results) {
System.out.println(result);
}
}
// 최대공약수
public static int gcd(int a, int b) {
if (b == 0) return a;
return gcd(b, a % b);
}
// 최소공배수
// public static int lcm(int a, int b) {
// return (a * b) / gcd(a, b);
// }
}