#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <algorithm>

using namespace std;

long c[800000];

int main()
{
    long n,k;
    scanf("%ld%ld",&n,&k);
    long long *a=(long long*)malloc((n+1)*sizeof(long long));
    long i,f=0;
    for (i=0;i<n;i++)
    {
        scanf("%lld",&a[i]);
        if (a[i]!=1 && a[i]!=0) f=1;
    }
    if (k==0)
    {
        for (i=0;i<n;i++)
            printf("%lld ",a[i]);
        return 0;
    }
    long u=k;
    //if (f==0)
    //{
        i=0;
        long j;
        while (k>0 && i<n)
        {
            long long mn;
            long l;
            long d=i+k;
            if (d>=n) d=n-1;
            for (j=i;j<=d;j++)
            {
                if (j==i || a[j]<mn) { mn=a[j]; l=j; }
            }
            c[l]=1;
            k=k-l+i;
            i=l+1;
        }
        if (k<=0)
        {
            for (j=0;j<i;j++)
            {
                if (c[j]==1) printf("%lld ",a[j]);
            }
            for (j=i;j<n;j++)
                printf("%lld ",a[j]);
        }
        else
        {
            long p=0;
            for (j=0;j<n;j++)
            {
                if (p==n-u) break;
                if (c[j]==1) printf("%lld ",a[j]);
                ++p;
            }
        }
    //}
   /* else
    {
        for (i=0;i<n;i++)
        {

        }
    }*/
    return 0;
}