小A同学去参加聚会,聚会上提供了n个食物,本着公平公正的原则,所有人都吃了相同个数的食物,最终剩余的食物个数m不够大家均分时,大家均拒绝再吃。那么给定n和m,你能求出参加聚会的可能人数么?
第一行一个数字t(0<t<=1000),代表测试数据的组数。
之后t组测试数据,输入n和m两个数字,其含义如题目所示。
测试数据保证n、m均在[1,100000]范围内。
对于每组测试数据,首先输出参加聚会的人数有几种情况,然后分别输出每种情况下参加聚会的人数,其中人数按从小到大排序且用空格分隔。
如果不可能出现输入数据所示的情况,请输出一个"Impossible"。
每个输出占一行,如样例所示。
2
7 4
28 4
Impossible
4 6 8 12 24