TREZOR - Trezor

no tags 

Mirko decided to open a new business – bank vaults. A branch of the bank can be visualized in a plane,vaults being points in the plane. Mirko's branch contains exactly L·(A+1+B) vaults, so that each point with integer coordinates inside the rectangle with corners (1, −A) and (L, B) contains one vault.

The vaults are watched by two guards – one at (0, −A), the other at (0, B). A guard can see a vault if there are no other vaults on the line segment connecting them.

A vault is not secure if neither guard can see it, secure if only one guard can see it and super-secure if both guards can see it.

Given A, B and L, output the number of insecure, secure and super-secure vaults.

Input

The first line contains integers A and B separated by a space (1 ≤ A ≤ 2000, 1 ≤ B ≤ 2000).

The second line contains the integer L (1 ≤ L ≤ 1 000 000 000).

Output

Output on three separate lines the numbers of insecure, secure and super-secure vaults.

Example

Input:
1 1
3

Output:
2
2
5
Input:
2 3
4

Output:
0
16
8
Input:
7 11
1000000

Output:
6723409
2301730
9974861

hide comments
aayush maheshwari: 2015-06-11 11:05:44

Any tricky case? Id 14433393 , Getting WA , please help!

Last edit: 2015-06-26 20:01:34
Josef Ziegler: 2010-01-04 14:54:59

Nice problem.

Last edit: 2010-01-04 14:57:35

Added by:Race with time
Date:2009-01-18
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:COCI 2008/2009