#include<bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
//freopen("input.txt","r",stdin);
int nTest; cin >> nTest;
while(nTest--){
int n, k; cin >> n >> k;
vector<int> a(n);
for(int i=0; i<n; i++) cin >> a[i];
vector<int> r(n);
for(int i=n-1; i>=0; i--){
r[i] = i;
while (r[i]<n-1 && a[r[i] + 1]>=a[i]) r[i] = r[r[i] + 1];
}
vector<int> ans(n);
deque<int> dq;
for(int i=0; i<n; i++){
while (dq.size() && (a[dq.back()]>a[i] || r[dq.back()] < i || dq.back()<i-k+1)) dq.pop_back();
dq.push_front(i);
ans[i] = a[dq.back()];
}
for(int i=k-1; i<n; i++) cout << ans[i] << " ";
cout << '\n';
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKDApOyBjb3V0LnRpZSgwKTsKICAgIC8vZnJlb3BlbigiaW5wdXQudHh0IiwiciIsc3RkaW4pOwogICAgaW50IG5UZXN0OyBjaW4gPj4gblRlc3Q7CiAgICB3aGlsZShuVGVzdC0tKXsKICAgICAgICBpbnQgbiwgazsgY2luID4+IG4gPj4gazsKICAgICAgICB2ZWN0b3I8aW50PiBhKG4pOwogICAgICAgIGZvcihpbnQgaT0wOyBpPG47IGkrKykgY2luID4+IGFbaV07CiAgICAgICAgdmVjdG9yPGludD4gcihuKTsKICAgICAgICBmb3IoaW50IGk9bi0xOyBpPj0wOyBpLS0pewogICAgICAgICAgICByW2ldID0gaTsKICAgICAgICAgICAgd2hpbGUgKHJbaV08bi0xICYmIGFbcltpXSArIDFdPj1hW2ldKSByW2ldID0gcltyW2ldICsgMV07CiAgICAgICAgfQogICAgICAgIHZlY3RvcjxpbnQ+IGFucyhuKTsKICAgICAgICBkZXF1ZTxpbnQ+IGRxOwogICAgICAgIGZvcihpbnQgaT0wOyBpPG47IGkrKyl7CiAgICAgICAgICAgIHdoaWxlIChkcS5zaXplKCkgJiYgKGFbZHEuYmFjaygpXT5hW2ldIHx8IHJbZHEuYmFjaygpXSA8IGkgfHwgZHEuYmFjaygpPGktaysxKSkgZHEucG9wX2JhY2soKTsKICAgICAgICAgICAgZHEucHVzaF9mcm9udChpKTsKICAgICAgICAgICAgYW5zW2ldID0gYVtkcS5iYWNrKCldOwogICAgICAgIH0KICAgICAgICBmb3IoaW50IGk9ay0xOyBpPG47IGkrKykgY291dCA8PCBhbnNbaV0gPDwgIiAiOwogICAgICAgIGNvdXQgPDwgJ1xuJzsKICAgIH0KICAgIHJldHVybiAwOwp9