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 sys import stdin
stdin.readline
def mp(): return list(map(int, stdin.readline().strip().split()))
def it():return int(stdin.readline().strip())
from math import pi,sqrt
from collections import defaultdict as dd,ChainMap as cc

def pf(n):
	v=[]
	d=dd(lambda:0)
	while n%2==0:
		n//=2
		d[2]+=1

	for j in range(3,int(sqrt(n))+1):
		if n%j==0:
			while n%j==0:
				n//=j
				d[j]+=1
	if n>2:
		d[n]+=1

	return d

n,m=mp()
if n==m:
	print(0)
else:
	a=pf(n)
	b=pf(m)
	c=cc(dict(a),dict(b))
	ans=flag=0

	for i in c:
		if i==2:
			ans+=abs(a[i]-b[i])
		elif i==3:
			ans+=abs(a[i]-b[i])
		elif i==5:
			ans+=abs(a[i]-b[i])
		else:
			if a[i]!=b[i]:
				flag=1
				break

	if flag:
		print(-1)
	else:
		print(ans)



