#include<bits/stdc++.h>
using namespace std;
int n,m,f[1100000][30];
int mmin(int a,int b){return a<b?a:b;}
void init()
{
cin>>n>>m;
for(int i=1;i<=n;++i)scanf("%d",&f[i][0]);
for(int j=1;j<=(int)log2(n);++j)
for(int i=1;i<=n;++i)
if(i+(1<<j)-1<=n)
f[i][j]=mmin(f[i][j-1],f[i+(1<<(j-1))][j-1]);
}
void st()
{
int k=(int)log2(m),x;
for(int i=m;i<=n;++i)
{
x=n-m+1;
cout<<mmin(f[x][k],f[i-(1<<k)+1][k])<<endl;
}
}
int main()
{
init();
st();
}