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>).
l=list(map(int,input().split()))
a,b=l[0],l[1]

def solve(a,b):
    c2,c3,c5=0,0,0
    while(1):
        while(a!=1 and a%2==0):
            a//=2
            c2+=1
        while(a!=1 and a%3==0):
            a//=3
            c3+=1
        while(a!=1 and a%5==0):
            a//=5
            c5+=1
        if a!=1:return -1
        break
    a=b
    ans=0
    while(1):
        count=0
        while(a!=1 and a%2==0):
            a//=2
            count+=1
        ans+=abs(count-c2)
        
        count=0
        while(a!=1 and a%3==0):
            a//=3
            count+=1
        ans+=abs(count-c3)
        
        count=0
        while(a!=1 and a%5==0):
            a//=5
            count+=1
        ans+=abs(count-c5)
        
        if a!=1:return -1
        else:return ans
    return -1

print(solve(a,b))
        
    

    
