Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ACM-ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

A. Modular Exponentiation

time limit per test

1 secondmemory limit per test

256 megabytesinput

standard inputoutput

standard outputThe following problem is well-known: given integers *n* and *m*, calculate

where 2^{n} = 2·2·...·2 (*n* factors), and denotes the remainder of division of *x* by *y*.

You are asked to solve the "reverse" problem. Given integers *n* and *m*, calculate

Input

The first line contains a single integer *n* (1 ≤ *n* ≤ 10^{8}).

The second line contains a single integer *m* (1 ≤ *m* ≤ 10^{8}).

Output

Output a single integer — the value of .

Examples

Input

4

42

Output

10

Input

1

58

Output

0

Input

98765432

23456789

Output

23456789

Note

In the first example, the remainder of division of 42 by 2^{4} = 16 is equal to 10.

In the second example, 58 is divisible by 2^{1} = 2 without remainder, and the answer is 0.

Codeforces (c) Copyright 2010-2018 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Oct/23/2018 11:34:32 (d3).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|