#abc296d. [abc296_d]M<=ab

[abc296_d]M<=ab

問題文

正整数 N,MN,M が与えられます。
次の条件をともにみたす最小の正整数 XX を求めてください。 ただし、そのようなものが存在しない場合は \-1\-1 を出力してください。

  • XX11 以上 NN 以下の整数 a,ba,b の積として表される。ここで、aabb は同じ整数でも良い。
  • XXMM 以上である。

制約

  • 1leqNleq10121\\leq N\\leq 10^{12}
  • 1leqMleq10121\\leq M\\leq 10^{12}
  • N,MN,M は整数

入力

入力は以下の形式で標準入力から与えられる。

NN MM

出力

問題文の条件をともにみたす最小の正整数 XX を出力せよ。そのようなものが存在しない場合は \-1\-1 を出力せよ。


入力例 1

5 7

出力例 1

8

まず、7711 以上 55 以下の整数 22 つの積として表すことはできません。
次に、888=2times48=2\\times 4 などとして、11 以上 55 以下の整数 22 つの積として表すことができます。

よって、88 を出力します。


入力例 2

2 5

出力例 2

-1

1times1=11\\times 1=11times2=21\\times 2=22times1=22\\times 1=22times2=42\\times 2=4 より、 11 以上 22 以下の整数 22 つの積として表す事ができるのは 1,2,41,2,4 のみであるため、 55 以上の数はそのような整数 22 つの積として表すことができません。
よって、\-1\-1 を出力します。


入力例 3

100000 10000000000

出力例 3

10000000000

a=b=100000a=b=100000 (=105)(=10^5)とした時、a,ba,b の積は 1000000000010000000000 (=1010)(=10^{10}) となり、これが答えとなります。
答えが 3232 bit 整数型に収まらない場合があることに注意してください。