Problem:
Score : 400 points

Problem Statement

Given is an integer S.
Find a combination of six integers X_1,Y_1,X_2,Y_2,X_3, and Y_3 that satisfies all of the following conditions:

0 \leq X_1,Y_1,X_2,Y_2,X_3,Y_3 \leq 10^9

The area of the triangle in a two-dimensional plane whose vertices are (X_1,Y_1),(X_2,Y_2), and (X_3,Y_3) is S/2.

We can prove that there always exist six integers that satisfy the conditions under the constraints of this problem.

Constraints

1 \leq S \leq 10^{18}

All values in input are integers.

Input

Input is given from Standard Input in the following format:

S

Output

Print six integers X_1,Y_1,X_2,Y_2,X_3, and Y_3 that satisfy the conditions, in this order, with spaces in between.
If multiple solutions exist, any of them will be accepted.

Sample Input 1

3

Sample Output 1

1 0 2 2 0 1

The area of the triangle in a two-dimensional plane whose vertices are (1,0),(2,2), and (0,1) is 3/2.
Printing 3 0 3 1 0 1 or 1 0 0 1 2 2 will also be accepted.

Sample Input 2

100

Sample Output 2

0 0 10 0 0 10

Sample Input 3

311114770564041497

Sample Output 3

314159265 358979323 846264338 327950288 419716939 937510582

Solution in Python (3.4.3) (judge verdict: Runtime Error)

# -*- coding: utf-8 -*-
import math
import itertools

def eratosthenes_sieve(n):
    table = [0] * (n + 1)
    prime_list = []
    
    for i in range(2, n + 1):
        if table[i] == 0:
            prime_list.append(i)
            for j in range(i + i, n + 1, i):
                table[j] = 1
    
    return prime_list

s = int(input())

#x1, y1は0で固定、もしかしたら5e9に変えるかも
x1 = y1 = 0

#Sを素因数分解
insu_list = []
sub_s = s + 1
insu_cosu = 0

if s > 7:
    for i in eratosthenes_sieve(100000):
        count = 0
        while((sub_s % i) == 0):
            count += 1
            sub_s /= i

        if count > 0:
            insu_cosu += count
            insu_list.append((i, count))

    if sub_s != 1:
        insu_list.append((int(sub_s), 1))

    print(insu_list)

    #素因数分解の結果からx3, y3の組み合わせを生成
    if insu_cosu >= 2:
        a = b = 1
        insu_flug = True
        for insu in insu_list:
            for i in range(insu[1]):
                if insu_flug:
                    a *= insu[0]
                else:
                    b *= insu[0]
                insu_flug = not insu_flug
        
        x3 = 1
        y2 = 1
        
        x2 = a
        y3 = b

    else:
        x2 = y2 = 1
        x3 = s + 1
        y3 = 1
else:
    x3 = 1
    y2 = 0
    x1 = s
    y2 = 1


#print(x1, y1, x2, y2, x3, y3, int(abs(x2 * y3 - x3 * y2)))
print(x1, y1, x2, y2, x3, y3)