**Time limit:**0.50 s**Memory limit:**512 MB

Kaaleppi will write a book of n pages. There will be some chapters and sections, so that each chapter contains one or more sections, and each section consists of one or more pages.

For example, if n=9, one possible structure is [(2)(4)][(3)]. In this case there are two chapters. The first chapter contains two sections with 2 and 4 pages, and the second chapter contains one section with 3 pages.

Your task is to calculate the total number of possible structures for the book. Since the answer may be large, output it modulo m.

# Input

The only input line contains two integers n and m: the number of pages and the modulo.

# Output

Print the total number of structures modulo m.

# Constraints

- 1 \le n,m \le 10^9

# Example

Input:

3 123

Output:

9

Explanation: There are 9 possible structures: [(3)], [(1)(2)], [(2)(1)], [(1)(1)(1)], [(1)][(2)], [(2)][(1)], [(1)][(1)(1)], [(1)(1)][(1)] and [(1)][(1)][(1)].