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 get_part(a):
    temp = {'qq': 0, 'q1': 0, 'q2': 0, 'q3': 0}
    tmp = 0
    while a % 2 == 0:
        tmp += 1
        a = a // 2
    temp['q1'] = tmp
    tmp = 0
    while a % 3 == 0:
        tmp += 1
        a = a // 3
    temp['q2'] = tmp
    tmp = 0
    while a % 5 == 0:
        tmp += 1
        a = a // 5
    temp['q3'] = tmp
    temp['qq'] = a
    return temp

a, b = map(int, input().split())
aa = get_part(a)
bb = get_part(b)

if aa['qq'] != bb['qq']:
    print("-1")
else:
    print(abs(aa['q1'] - bb['q1']) + abs(aa['q2'] - bb['q2']) + abs(aa['q3'] - bb['q3']))

	     			  		 				  								  	