异或故事
题号:NC277217
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

\,\,\,\,\,\,\,\,\,\,给定 t 组询问,\mathit {76} 每次询问都会给出一个正整数 a ,你需要在区间 [1,10^9] 中找到两个正整数 bc ,使得 b \oplus c = a
\,\,\,\,\,\,\,\,\,\,\oplus 代表按位异或。

输入描述:

\,\,\,\,\,\,\,\,\,\,每个测试文件均包含多组测试数据。第一行输入一个整数 T\ (1\le T\le 10^5) 代表数据组数,每组测试数据描述如下:
\,\,\,\,\,\,\,\,\,\,在一行上输入一个整数 a\ (\ 1 \leq a \leq 10^9\ ) 代表\mathit {76} 给出的初始数字

输出描述:

\,\,\,\,\,\,\,\,\,\,对于每一组测试数据,在一行上输出两个正整数,代表你找到的两个值。
\,\,\,\,\,\,\,\,\,\,如果存在多个解决方案,您可以输出任意一个。
示例1

输入

复制
3
1
5
4

输出

复制
2 3
3 6
74 78

说明

\,\,\,\,\,\,\,\,\,\,对于第一组测试数据,(10)_2 \operatorname{xor} (11)_2=(01)_2
\,\,\,\,\,\,\,\,\,\,对于第二组测试数据,(011)_2 \operatorname{xor} (110)_2=(101)_2 。