Two little greedy bears have found two pieces of cheese in the forest of weight *a* and *b* grams, correspondingly. The bears are so greedy that they are ready to fight for the larger piece. That's where the fox comes in and starts the dialog: "Little bears, wait a little, I want to make your pieces equal" "Come off it fox, how are you going to do that?", the curious bears asked. "It's easy", said the fox. "If the mass of a certain piece is divisible by two, then I can eat exactly a half of the piece. If the mass of a certain piece is divisible by three, then I can eat exactly two-thirds, and if the mass is divisible by five, then I can eat four-fifths. I'll eat a little here and there and make the pieces equal". 

The little bears realize that the fox's proposal contains a catch. But at the same time they realize that they can not make the two pieces equal themselves. So they agreed to her proposal, but on one condition: the fox should make the pieces equal as quickly as possible. Find the minimum number of operations the fox needs to make pieces equal.
The first line contains two space-separated integers *a* and *b* (1 ≤ *a*, *b* ≤ 10<sup class="upper-index">9</sup>).
from fractions import Fraction
 
a, b = list(map(int, input().split()))
 
result = 0
sequence = [[a]]
time = [[0]]

def divisors(number, countNum):
    global sequence, time
    array = [2, 3, 5]
    for i in array:
        if number % i == 0:
            sequence[-1].append(number//i)
            time[-1].append(countNum+1)
            divisors(number//i, countNum+1)
 
def check():
    global sequence, result
    for i in range(len(sequence[0])):
        if sequence[0][i] in sequence[1]:
            result = time[0][i] + time[1][sequence[1].index(sequence[0][i])]
            return

def sorting(ind):
    global sequence, time
    double = list(map(lambda x, y: [y, x], sequence[ind], time[ind]))
    double.sort()
    sequence[ind] = list(map(lambda x: x[1], double))
    time[ind] = list(map(lambda x: x[0], double))

if a != b:
    divisors(a, 0)
    sequence.append([b])
    time.append([0])
    divisors(b, 0)
 
    sorting(0)
    sorting(1)

    check()

    if result == 0:
        result = -1
else:
    result = 0
    
print(result)