Floor Tiles in a Park
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Grammy is enjoying her holiday in Pigeland City Park. She was interested in the floor tiles in the park. After careful examination, she found out that each of the floor tiles is a rectangle grid with vertical and/or horizontal colored segments on it. The colored segments have ends on grid points, and they split the rectangle into exactly k subrectangles.

For instance, the following illustration shows a floor tile with .



Grammy wants to know the number of different floor tiles satisfying the condition. Please tell her the answer. Since the answer may be too large, you should output the number modulo .

Note that two floor tiles are considered different if and only if a grid line is colored in one tile but not in the other. If two tiles can turn into the same by rotation or reflection, they may still be considered as different tiles.

输入描述:

The only line contains 3 integers W, H, k ().

输出描述:

Output a single integer, denoting the number of different floor tiles, modulo .
示例1

输入

复制
2 3 5

输出

复制
7
示例2

输入

复制
4 3 5

输出

复制
307
示例3

输入

复制
6 372065168 5

输出

复制
114514