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>).
import math
def find_fac_2_3_5(n) :
    pow_2=0
    pow_3=0
    pow_5=0
    #print(n)
    while n%2==0 :
        n=n//2
        pow_2+=1
    while n%3==0 :
        n=n//3
        pow_3+=1
    while n%5==0 :
        n=n//5
        pow_5+=1
    
    if n==1 :
        return pow_2,pow_3,pow_5
    else :
        return -1,-1,-1
a,b=input().split(" ")
a=int(a)
b=int(b)
k=math.gcd(a,b)
q1,q2,q3=find_fac_2_3_5(a)
a1,a2,a3=find_fac_2_3_5(k)
e1,e2,e3=find_fac_2_3_5(b)

if a1==-1 and k!=1 :
    print("-1")
else :
    if k==1 :
        if e1!=-1 and q1!=-1 :
            print(q1+q2+q3+e1+e2+e3)
    else :
        w1,w2,w3=find_fac_2_3_5(a//k)
        r1,r2,r3=find_fac_2_3_5(b//k)
        d=max(w1,w2,w3,r1,r2,r3)
        print(d+a1+a2+a3)




    





        