The sum of digits of a non-negative integer $a$ is the result of summing up its digits together when written in the decimal system. For example, the sum of digits of $123$ is $6$ and the sum of digits of $10$ is $1$. In a formal way, the sum of digits of $\displaystyle a=\sum_{i=0}^{\infty} a_i \cdot 10^i$, where $0 \leq a_i \leq 9$, is defined as $\displaystyle\sum_{i=0}^{\infty}{a_i}$.

Given an integer $n$, find two non-negative integers $x$ and $y$ which satisfy the following conditions.

$x+y=n$, and

the sum of digits of $x$ and the sum of digits of $y$ differ by at most $1$.

It can be shown that such $x$ and $y$ always exist.


-----Input-----

Each test contains multiple test cases. The first line contains the number of test cases $t$ ($1 \le t \le 10000$).

Each test case consists of a single integer $n$ ($1 \leq n \leq 10^9$)


-----Output-----

For each test case, print two integers $x$ and $y$.

If there are multiple answers, print any.


-----Examples-----

Input
5
1
161
67
1206
19
Output
1 0
67 94
60 7
1138 68
14 5


-----Note-----

In the second test case, the sum of digits of $67$ and the sum of digits of $94$ are both $13$.

In the third test case, the sum of digits of $60$ is $6$, and the sum of digits of $7$ is $7$.

Difficulty: EASY

Solutions:
import sys, math, cmath, time
from bisect import bisect_left
start_time = time.time()

def sod(n):
	n = str(n)
	s = 0
	for i in n:
		s = s + int(i)
	return s

def solve(t):
	n = inp()
	s = ''
	s1 = ''
	c = 1
	while n > 0:
		d = n % 10
		if d % 2 == 0:
			s = str(d // 2) + s
			s1 = str(d // 2) + s1
		elif c == 1:
			s = str(d // 2) + s
			s1 = str(d // 2 + 1) + s1
			c -= 1
		else:
			s = str(d // 2 + 1) + s
			s1 = str(d // 2) + s1
			c += 1
		n = n // 10
	print(int(s), int(s1))

def main():
	testcases = 1
	testcases = inp()
	for each_testcase in range(testcases):
		solve(each_testcase)

def inp():
	return int(input())

def inps():
	return input().split()
ONLINE_JUDGE = __debug__
if ONLINE_JUDGE:
	input = sys.stdin.readline
main()


import os.path
from math import gcd, floor, ceil
from collections import *
import sys
mod = 1000000007
INF = float('inf')

def st():
	return list(sys.stdin.readline().strip())

def li():
	return list(map(int, sys.stdin.readline().split()))

def mp():
	return map(int, sys.stdin.readline().split())

def inp():
	return int(sys.stdin.readline())

def pr(n):
	return sys.stdout.write(str(n) + '\n')

def prl(n):
	return sys.stdout.write(str(n) + ' ')
if os.path.exists('input.txt'):
	sys.stdin = open('input.txt', 'r')
	sys.stdout = open('output.txt', 'w')
t = inp()
for i in range(t):
	n = inp()
	(l, l1, l2) = ([], [], [])
	while n > 0:
		l.append(n % 10)
		n = n // 10
	flag = 0
	for i in range(len(l)):
		if l[i] % 2 != 0:
			l1.append(l[i] // 2 + flag)
			l2.append(l[i] // 2 - flag + 1)
			if flag == 0:
				flag = 1
			else:
				flag = 0
		else:
			l1.append(l[i] // 2)
			l2.append(l[i] // 2)
	(a, b) = (0, 0)
	f = 1
	for i in range(len(l)):
		a += l1[i] * f
		b += l2[i] * f
		f *= 10
	print(a, b)


def solve():
	(a, b, cur) = ('', '', 0)
	for d in x:
		d = int(d)
		if d % 2 == 0:
			a += str(d // 2)
			b += str(d // 2)
		else:
			if cur == 1:
				(a, b) = (b, a)
			a += str(d // 2)
			b += str((d + 1) // 2)
			cur ^= 1
	return [int(a), int(b)]
for testcase in range(int(input())):
	x = input()
	print(*solve())


from typing import List
from bisect import *
from collections import *
from functools import *
from itertools import *
from math import *
from queue import PriorityQueue
INF = 2 ** 64 - 1
MOD = 10 ** 9 + 7
mi = lambda : map(int, input().split())
li = lambda : list(mi())

def digit(n):
	ans = 0
	while n > 0:
		ans += n % 10
		n //= 10
	return ans

def main(n):
	small = True
	a = 0
	b = 0
	add = 1
	src = n
	while n > 0:
		temp = n % 10
		if temp % 2 == 0:
			a += add * (temp - temp // 2)
			b += add * (temp // 2)
		else:
			if small and temp % 2 != 0:
				a += add * (temp // 2)
				b += add * (temp - temp // 2)
			else:
				a += add * (temp - temp // 2)
				b += add * (temp // 2)
			small = not small
		n //= 10
		add *= 10
	print(a, b)
	return
caseNum = int(input())
for i in range(0, caseNum):
	n = int(input())
	main(n)


import sys, os
import math
TC = True

def solve():
	n = int(input())
	i = 0
	flag = 0
	nDigits = [0] * 10
	while n:
		nDigits[i] = n % 10
		n //= 10
		i += 1
	a = [0] * 10
	b = [0] * 10
	for j in range(i):
		if nDigits[j] & 1:
			a[j] = nDigits[j] // 2 + flag
			b[j] = nDigits[j] // 2 + 1 - flag
			flag = 1 - flag
		else:
			a[j] = b[j] = nDigits[j] // 2
	x = 0
	y = 0
	m = 1
	for j in range(i):
		y += b[j] * m
		x += a[j] * m
		m *= 10
	print(x, y)
if os.path.exists('input.txt'):
	debug = True
	sys.stdin = open('input.txt', 'r')
if TC:
	for _ in range(int(input())):
		solve()
else:
	solve()


num_tests = int(input().strip())
for _ in range(num_tests):
	num = int(input().strip())
	first_half = []
	second_half = []
	toggle = 0
	while num:
		digit = num % 10
		if digit & 1:
			first_half.append(digit // 2 + toggle)
			second_half.append(digit // 2 + 1 - toggle)
			toggle = 1 - toggle
		else:
			first_half.append(digit // 2)
			second_half.append(digit // 2)
		num = num // 10
	first_result = 0
	second_result = 0
	for i in range(len(first_half) - 1, -1, -1):
		first_result = first_result * 10 + first_half[i]
		second_result = second_result * 10 + second_half[i]
	print(first_result, second_result)


N = int(input())
for i in range(N):
	num = int(input())
	ans1 = ans2 = 0
	flag = 0
	base = 1
	while num != 0:
		tmp = num % 10
		x = tmp // 2
		y = tmp - x
		if x != y:
			if flag == 1:
				tt = x
				x = y
				y = tt
			flag ^= 1
		ans1 += x * base
		ans2 += y * base
		num = num // 10
		base *= 10
	print(ans1, ans2)