Problem:
Score : 300 points

Problem Statement

As a token of his gratitude, Takahashi has decided to give his mother an integer sequence.
The sequence A needs to satisfy the conditions below:

A consists of integers between X and Y (inclusive).

For each 1\leq i \leq |A|-1, A_{i+1} is a multiple of A_i and strictly greater than A_i.

Find the maximum possible length of the sequence.

Constraints

1 \leq X \leq Y \leq 10^{18}

All input values are integers.

Input

Input is given from Standard Input in the following format:

X Y

Output

Print the maximum possible length of the sequence.

Sample Input 1

3 20

Sample Output 1

3

The sequence 3,6,18 satisfies the conditions.

Sample Input 2

25 100

Sample Output 2

3

Sample Input 3

314159265 358979323846264338

Sample Output 3

31

Solution in Go (1.6) (judge verdict: Accepted)

package main

import "fmt"

var X, Y int64

func main() {
	fmt.Scanf("%d %d", &X, &Y)

	ans := 0

	for X <= Y {
		X *= 2
		ans++
	}

	fmt.Println(ans)
}

func Gcd(a, b int64) int64 {
	if a > b {
		tmp := a
		a = b
		b = tmp
	}
	if b%a == 0 {
		return a
	}
	return Gcd(b%a, a)
}

func Max(x, y int) int {
	if x > y {
		return x
	}
	return y
}