#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int n,m,gd[10001],a[10001],b[10001],deen,num=0;
void print(){
for(int i=1;i<=n;i++)
printf("%d ",b[i]);
return ;
}
void dfs(int dee){
if(dee>n){
num++;
if(deen==0){
for(int i=1;i<=n;i++){
if(a[i]!=b[i])
return;
}
deen=num+m;
return;
}
if(num==deen){
print();
return ;
}
else
return ;
}
for(int i=1;i<=n;i++){
if(!gd[i]){
gd[i]=1;
b[dee]=i;
dfs(dee+1);
gd[i]=0;
}
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
dfs(1);
return 0;
}