#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,k,arr[250000],ne[250000],ans[250000],t[250000];
set<int>se;
signed main(){
	cin>>n>>k;
	for(int i=1;i<=n;i++){
		cin>>arr[i];
		ne[i]=-1;
		t[i]=1;
	}
	for(int i=1;i<=n;i++){
		auto it=se.lower_bound(arr[i]);
		if(it==se.end()){
			se.insert(arr[i]);
			if(t[arr[i]]==k){
				for(int j=arr[i];j!=-1;j=ne[j]){
					ans[j]=i;
				}
				se.erase(arr[i]);
			}
		}else{
			int pos=*it;
			se.erase(pos);
			t[arr[i]]=t[pos]+1;
			ne[arr[i]]=pos;
			if(t[arr[i]]==k){
				for(int j=arr[i];j!=-1;j=ne[j]){
					ans[j]=i;
				}
				se.erase(arr[i]);
			}
		}
	}
	for(int i=1;i<=n;i++){
		if(ans[i]==0){
			cout<<-1<<"\n";
			continue;
		} 
		cout<<ans[i]<<"\n";
	}
}