CF1473B String LCM

Description

Let's define a multiplication operation between a string $ a $ and a positive integer $ x $ : $ a \cdot x $ is the string that is a result of writing $ x $ copies of $ a $ one after another. For example, "abc" $ \cdot~2~= $ "abcabc", "a" $ \cdot~5~= $ "aaaaa". A string $ a $ is divisible by another string $ b $ if there exists an integer $ x $ such that $ b \cdot x = a $ . For example, "abababab" is divisible by "ab", but is not divisible by "ababab" or "aa". LCM of two strings $ s $ and $ t $ (defined as $ LCM(s, t) $ ) is the shortest non-empty string that is divisible by both $ s $ and $ t $ . You are given two strings $ s $ and $ t $ . Find $ LCM(s, t) $ or report that it does not exist. It can be shown that if $ LCM(s, t) $ exists, it is unique.

Input Format

The first line contains one integer $ q $ ( $ 1 \le q \le 2000 $ ) — the number of test cases. Each test case consists of two lines, containing strings $ s $ and $ t $ ( $ 1 \le |s|, |t| \le 20 $ ). Each character in each of these strings is either 'a' or 'b'.

Output Format

For each test case, print $ LCM(s, t) $ if it exists; otherwise, print -1. It can be shown that if $ LCM(s, t) $ exists, it is unique.

Explanation/Hint

In the first test case, "baba" = "baba" $ \cdot~1~= $ "ba" $ \cdot~2 $ . In the second test case, "aaaaaa" = "aa" $ \cdot~3~= $ "aaa" $ \cdot~2 $ .