#include <bits/stdc++.h>

using namespace std;

#define f first
#define s second
#define el "\n"
#define EPS 1e-9
#define MOD (int)1e9+7
#define INF (int)1e9
#define input(n, a) for (int i=0;i<n;++i) {cin>>a[i];}
#define input2D(n, a) for (int i=0;i<n;++i) for (int j=0;j<n;++j) {cin>>a[i][j];}
#define all(a) a.begin(), a.end()
#define rall(a) a.rbegin(), a.rend()

#define cumm(n, a) for (int i=0;i<n;++i) {cin>>a[i]; if (i) {a[i]+=a[i-1];}}
#define cumm2D(n, a) for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) \
{cin >> a[i][j]; if (i > 0) a[i][j] += a[i - 1][j];                            \
if (j > 0) a[i][j] += a[i][j - 1];                                             \
if (i > 0 && j > 0) a[i][j] -= a[i - 1][j - 1]; } }

#define BOOST cin.tie(0), cout.tie(0), cin.sync_with_stdio(0), cout.sync_with_stdio(0);

typedef long long ll;
typedef pair<int, int> ii;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<double> vd;
typedef vector<ii> vii;
typedef map<string, int> mpsi;

typedef map<int, int> mpii;

const int N = 2 * (1e5 + 5);

int main() {
    BOOST
    int t = 1;
    cin >> t;
    while (t--) {
        int n, k;
        cin >> n >> k;
        vi a;
        if (k > 3) {
            a = vi(k-3, 1);
            n -= (k-3);
        }
        if (n & 1) {
            a.push_back(1);
            a.push_back(n / 2);
            a.push_back(n / 2);
        } else if (n % 4) {
            a.push_back(n / 2 - 1);
            a.push_back(n / 2 - 1);
            a.push_back(2);

        } else {
            a.push_back(n / 4);
            a.push_back(n / 4);
            a.push_back(n / 2);
        }
        for (int i:a) cout << i << " ";
        cout << el;
    }
}
