一个考古学家正在发掘古代的一座城市时,不小心被一个部分毁坏的石墙绊倒了。那个石墙上有数行奇异的数。这些数的前几位完整无缺,但不幸地,其余位的数字由于侵蚀作用而无法辨认。尽管如此,他注意到每一行完好的数字都像是2的幂的前几位,他就猜想这个石墙上原先的所有数都是2的幂。为了验证自己的想法,他选择了能看清楚的一些数写成列表,并把列表交给你,请你求出最小的2的幂(如果存在)使幂的前若干位与他提供的列表中的数一致。

  所以你必须写一个程序,对于给定的整数N,求出最小的指数E(如果存在)使这个数的前若干位与N相同。注意:N的长度小于的长度的一半。

  输入

  输入文件包含一些正整数,它们均小于。数与数之间用空格(可能不止一个)或空行(可能不止一个)隔开。输入文件末尾可能会有多余的空行。

  输出

  对于输入文件的每一个数N,依次输出最小的正数E使 的前若干位是N(占一行)。如果E不存在,输出"no power of 2"(占一行)。

  样例输入(dilemma.in)

  1
  2
  10

  样例输出(dilemma.out)

  7
  8
  20