import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
static int n,m;
static int a[];//记录方案
static int mars[];//记录初始排序
static boolean visited[];//访问节点
static int res=0;
static boolean flag=false;
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
n=scan.nextInt();m=scan.nextInt();
int N=10000;
a=new int[N];
mars=new int[N];
visited=new boolean[N];
for(int i=1;i<=n;i++) {
mars[i]=scan.nextInt();
}
dfs(1);
scan.close();
}
static void dfs(int x){
if(flag) return;
if(x>n){
res++;
if(res==m+1){
flag=true;
for(int i=1;i<=n;i++){
System.out.print(a[i]+" ");
}
}
return;
}
for(int i=1;i<=n;i++){
if(res==0) {
i=mars[x];
}
if(!visited[i]){
visited[i]=true;
a[x]=i;
dfs(x+1);
visited[i]=false;
}
}
}
}