I. Secret Meeting Across the Stars
time limit per test
1.5 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

The Emperor has just launched a revolution against the Jedi. You are a senator on the planet Coruscant and you find yourself in opposition to the Emperor. You decide to meet secretly with two important figures of the old republic, Mon Mothma and Bail Organa, on the planet Alderaan to discuss what lies in the future.

You are interested in the number of paths that can get you to Alderaan. Currently, you are on the planet Coruscant, which is marked as node $$$1$$$ on your ship's navigation system. Alderaan is marked as node $$$a$$$. There exists a safe route between from node $$$i$$$ to node $$$j$$$ if and only if $$$i$$$ divides $$$j$$$ $$$(i \: | \: j; \: i \neq j)$$$. A route is a one-directional edge between two nodes, so a safe route existing from $$$i$$$ to $$$j$$$ does not imply a safe route exists from $$$j$$$ to $$$i$$$.

Unfortunately, there is a crisis on the planet Mustafar, represented by the node $$$b \: (b \neq a)$$$. The Emperor is on his way to Mustafar to retrieve the remains of his newest disciple, just felled by Obi-Wan Kenobi. It is dangerous to share any route with the Emperor, and thus any of the possible paths from Coruscant (node $$$1$$$) to Alderaan (node $$$a$$$) that share a route with any path from Coruscant (node $$$1$$$) to Mustafar (node $$$b$$$) are now not safe.

The ship's captain asked for your help in finding the number of safe paths from Coruscant to Alderaan.

Input

Each test will contain a line with 2 integers $$$a$$$ and $$$b$$$.

The first integer is $$$a \: (2 \leq a \leq 10^{12})$$$ — the value of node $$$a$$$, representing the target planet Alderaan.

The second integer is $$$b \: (2 \leq b \leq 10^{12}, \: b \neq a)$$$ — the value of node $$$b$$$, representing the dangerous planet Mustafar.

Output

For each test case, output a single integer: the number of safe paths from Coruscant (node $$$1$$$) to Alderaan (node $$$a$$$).

It is guaranteed that the answer fits into a 64-bit integer.

Examples
Input
6 16
Output
2
Input
5 10
Output
0
Input
10 5
Output
2
Note

In the first test case there are two safe paths: $$$1 \rightarrow 3 \rightarrow 6$$$ and $$$1 \rightarrow 6$$$.

In the second test case it can be shown that none of the paths are safe.