B. Как лисица сыр делила
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Два жадных медвежонка нашли в лесу два куска сыра массами a и b грамм, соответственно. Медвежата настолько жадные, что готовы набить друг другу шишек за право обладания куском побольше. Подскакивает к ним лисица и говорит: «Погодите, медвежата, я могу помочь вам уравнять куски!» «Да ладно, как же ты это сделаешь?», — поинтересовались медвежата. «Очень просто — сказала лисица. — Если масса какого-то куска делится на два, то я могу откусить от него ровно половину и съесть. Если масса какого-то куска делится на три, то я могу откусить от него ровно две трети, а если масса делится на пять — то могу откусить и съесть четыре пятых. Вот немного пооткусываю, и уравняю куски».

Медвежата догадываются, что в предложении лисицы содержится какой-то подвох. Но в то же время они понимают, что самостоятельно не смогут сделать два куска одинаковыми. Поэтому медвежата согласились на ее предложение, но с одним условием: лисица должна уравнять куски как можно быстрее. Найдите минимальное количество описанных операций, которое потребуется лисице, чтобы уравнять куски.

Входные данные

В первой строке записаны два целых числа a и b, разделенные пробелом (1 ≤ a, b ≤ 109).

Выходные данные

В том случае, если лисица обманывает медвежат и никаким образом не сможет уравнять куски, то выведите -1. Иначе выведите искомое наименьшее количество операций. В случае, если куски сыра изначально равны, искомое количество равно 0.

Примеры
Входные данные
15 20
Выходные данные
3
Входные данные
14 8
Выходные данные
-1
Входные данные
6 6
Выходные данные
0