Codeforces celebrates 10 years! We are pleased to announce the crowdfunding-campaign. Congratulate us by the link https://codeforces.com/10years. ×

C. Two Arrays
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

You are given two integers $n$ and $m$. Calculate the number of pairs of arrays $(a, b)$ such that:

• the length of both arrays is equal to $m$;
• each element of each array is an integer between $1$ and $n$ (inclusive);
• $a_i \le b_i$ for any index $i$ from $1$ to $m$;
• array $a$ is sorted in non-descending order;
• array $b$ is sorted in non-ascending order.

As the result can be very large, you should print it modulo $10^9+7$.

Input

The only line contains two integers $n$ and $m$ ($1 \le n \le 1000$, $1 \le m \le 10$).

Output

Print one integer – the number of arrays $a$ and $b$ satisfying the conditions described above modulo $10^9+7$.

Examples
Input
2 2

Output
5

Input
10 1

Output
55

Input
723 9

Output
157557417

Note

In the first test there are $5$ suitable arrays:

• $a = [1, 1], b = [2, 2]$;
• $a = [1, 2], b = [2, 2]$;
• $a = [2, 2], b = [2, 2]$;
• $a = [1, 1], b = [2, 1]$;
• $a = [1, 1], b = [1, 1]$.