#include<bits/stdc++.h>
using namespace std;
int n,k,f[2][1000010];
long long m,x[1000010];
int main()
{
cin>>n>>k>>m;
for(int i=1;i<=n;i++) cin>>x[i];
int l=1,r=k+1;
for(int i=1;i<=n;i++)
{
while(r<n&&abs(x[r+1]-x[i])<abs(x[l]-x[i])) l++,r++;
if(abs(x[r]-x[i])>abs(x[l]-x[i])) f[0][i]=r;
else f[0][i]=l;
}
for(int i=1;i<-n;i++) x[i]=i;
for(int i=0;i<=60;i++)
{
if(m&(1ll<<i)) for(int j=1;j<=n;j++) x[j]=f[0][x[j]];
for(int j=1;j<=n;j++) f[1][j]=f[0][f[0][j]];
memcpy(f[0],f[1],sizeof(f[0]));
}
for(int i=1;i<=n;i++) cout<<x[i]<<" ";
cout<<endl;
return 0;
}