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>).
def reduceToOne(a,table,operation) :
    if a%2 == 0 and table.get(a//2) is None :
        table[a//2] = operation
        reduceToOne(a//2,table,operation+1)
    if a%3 == 0 and table.get(a//3) is None :
        table[a//3] = operation
        reduceToOne(a//3,table,operation+1)
    if a%5 == 0 and table.get(a//5) is None :
        table[a//5] = operation
        reduceToOne(a//5,table,operation+1)
    
    return 
            
def findCommon (b,table,operation) :
    smallest = float("inf")
    if b%2 == 0 :
        if table.get(b//2) is None :
            smallest = findCommon(b//2,table,operation+1)
        else :
            smallest = operation + table[b//2]
    if b%3 == 0 :
        if table.get(b//3) is None :
            smallest = min(smallest,findCommon(b//3,table,operation+1))
        else :
            smallest = min(smallest,operation+table[b//3])
    
    if b%5 == 0 :
        if table.get(b//5) is None :
            smallest = min(smallest,findCommon(b//5,table,operation+1))
        else :
            smallest = min(smallest,operation+table[b//5])
    
    if smallest == float("inf") :
        return -1
    return smallest


a,b = list(map(int,input().split()))
if a == b :
    print(0)
else :
    table = {}
    reduceToOne(a,table,1)
    print (findCommon(b,table,1))
