Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

The problem statement has recently been changed. View the changes.

×
C2. k-LCM (hard version)

time limit per test

1 secondmemory limit per test

256 megabytesinput

standard inputoutput

standard outputIt is the hard version of the problem. The only difference is that in this version $$$3 \le k \le n$$$.

You are given a positive integer $$$n$$$. Find $$$k$$$ positive integers $$$a_1, a_2, \ldots, a_k$$$, such that:

- $$$a_1 + a_2 + \ldots + a_k = n$$$
- $$$LCM(a_1, a_2, \ldots, a_k) \le \frac{n}{2}$$$

Here $$$LCM$$$ is the least common multiple of numbers $$$a_1, a_2, \ldots, a_k$$$.

We can show that for given constraints the answer always exists.

Input

The first line contains a single integer $$$t$$$ $$$(1 \le t \le 10^4)$$$ — the number of test cases.

The only line of each test case contains two integers $$$n$$$, $$$k$$$ ($$$3 \le n \le 10^9$$$, $$$3 \le k \le n$$$).

It is guaranteed that the sum of $$$k$$$ over all test cases does not exceed $$$10^5$$$.

Output

For each test case print $$$k$$$ positive integers $$$a_1, a_2, \ldots, a_k$$$, for which all conditions are satisfied.

Example

Input

2 6 4 9 5

Output

1 2 2 1 1 3 3 1 1

Codeforces (c) Copyright 2010-2021 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Jul/31/2021 20:36:45 (j3).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|