#1184. yj的神奇素数筛

yj的神奇素数筛

题目描述

众所周知,yj是一个热爱学习的好孩子,她最近正在钻研素数筛,当然素数筛有好几种,比如:埃氏筛、欧拉筛等,不同的筛法有不同的数据处理逻辑。但是,xhy学姐却对yj学姐的行为不屑一顾,她认为:素数筛是新生学的东西,能解决的问题其实很少。于是她向yj学姐发出挑战,她会告诉yj学姐一个正整数n(该数字n可能很大),要求yj学姐判断这个数是否能分解成一个素数x+一个合数y的形式(x+y=n),如果不能组成的话就输出NO;如果可以的话,就输出能够组成这个数的素数x和合数y。

例如:

  • 1不能被分解成一个素数+一个合数的形式,此时yj学姐需要说NO
  • 当xhy学姐说出7时,yj学姐则要以最快的速度回答 3 4

输入格式

输入包含多个样例。输入的第一行包含一个整数 T (1≤T≤10^5),表示样例数目。

对于每个样例,输入的每一行都包含一个整数 n(1≤n≤10^18)。

输出格式

对于每一种情况:

  • 如果可以分解,打印两个整数 x 和 y,其中 1≤x,y<n
  • 如果有多个有效答案,输出任意一个即可
  • 如果没有有效答案,则输出 NO

样例

输入

2
1
7

输出

NO
3 4

约束条件

  • 1 ≤ T ≤ 10^5
  • 1≤n≤10^18
  • 1 ≤ x,y < n