Дано дві послідовності цілих чисел : A_1 A_2 ... A_n та : B_1 B_2 ... B_m, а також набір правил переписування у вигляді "x_1 x_2 ... x_k → ". Ви можете виконувати наступні перетворення над кожною з послідовностей необмежену кількість разів у будь-якому порядку незалежно.
Обертання: Переміщення першого елемента послідовності в кінець. Тобто, перетворення послідовності c_1 c_2 ... c_p на c_2 ... c_p c_1.
Переписування: За правилом переписування "x_1 x_2 ... x_k → ", перетворення послідовності c_1 c_2 ... c_i x_1 x_2 ... x_k d_1 d_2 ... d_j на c_1 c_2 ... c_i d_1 d_2 ... d_j.
Ваше завдання - визначити, чи можливо перетворити дві послідовності та в одну й ту ж послідовність. Якщо це можливо, обчисліть довжину найдовшої з послідовностей після такого перетворення.
Вхід складається з кількох наборів даних. Кожен набір даних має наступну структуру.
A_1 A_2 ... A_n
B_1 B_2 ... B_m
R_1
...
R_r
Перший рядок набору даних складається з трьох додатних цілих чисел , та , де (n \le 25) - це довжина послідовності , (m \le 25) - це довжина послідовності , і (r \le 60) - це кількість правил переписування. Другий рядок містить цілих чисел, що представляють елементів . Третій рядок містить цілих чисел, що представляють елементів . Кожен з останніх рядків описує правило переписування у наступній формі.
x_1 x_2 ... x_k
Перше - це ціле число (2 \le k \le 10), яке є довжиною лівої частини правила. За ним слідують цілих чисел x_1 x_2 ... x_k, що представляють ліву частину правила. Нарешті йде ціле число , що представляє праву частину.
Всі з A_1, .., A_n, B_1, ..., B_m, x_1, ..., x_k, та знаходяться в діапазоні від до включно.
Рядок " " позначає кінець вводу.
Для кожного набору даних, якщо можливо перетворити та в одну й ту ж послідовність, виведіть довжину найдовшої з послідовностей після такого перетворення. Виведіть , якщо це неможливо.
Приклад 1