// make TARGET sum with K element from array of N
/*
1 <= n <= 200;
-1000 <= target <= 1000;
0 <= choose <= min(n, 200);
-100 <= a[i] <= 100
*/
#include <bits/stdc++.h>
#define up(i,a,b) for (int i = (int)a; i <= (int)b; i++)
using namespace std;
int n;
int a[201];
int target, choose;
int offset;
int sum_pos, sum_neg;
int dp[2][201*201][201]; //dp[i][j][k] = dung den so thu i, tao thanh tong j, da dung duoc k so
void solve(){
dp[0][offset][0] = -1;
for (int i = 1; i <= n; i++){
for (int j = sum_neg; j <= sum_pos; j++){
for (int k = 0; k <= i; k++){
dp[(i & 1)][j + offset][k] = dp[(i-1) & 1][j + offset][k];
if (k == 0) continue;
if (j - a[i] >= sum_neg && j - a[i] <= sum_pos){
if (dp[(i-1) & 1][j - a[i] + offset][k-1] != 0){ //chon a[i] ?
if (dp[(i & 1)][j + offset][k] == 0){
dp[(i & 1)][j + offset][k] = i;
}
}
}
}
}
}
}
void trace(int target, int last, int choose){
vector<int> path;
while (choose != 0){
int x = dp[(last & 1)][target + offset][choose];
target -= a[x];
path.push_back(x);
last = (x & 1);
--choose;
}
for (auto x : path) cout << a[x] << " ";
cout << "\n";
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
#define Task "A"
if (fopen(Task".inp", "r")){
freopen(Task".inp", "r", stdin);
freopen(Task".out", "w", stdout);
}
cin >> n >> target >> choose;
up(i,1,n){
cin >> a[i];
if (a[i] < 0) sum_neg += a[i];
else sum_pos += a[i];
}
offset = -sum_neg;
solve();
if (dp[(n & 1)][target + offset][choose] != 0){
trace(target, dp[(n & 1)][target + offset][choose], choose);
}
}
Ly8gbWFrZSBUQVJHRVQgc3VtIHdpdGggSyBlbGVtZW50IGZyb20gYXJyYXkgb2YgTgovKgoxIDw9IG4gPD0gMjAwOyAKLTEwMDAgPD0gdGFyZ2V0IDw9IDEwMDA7IAowIDw9IGNob29zZSA8PSBtaW4obiwgMjAwKTsgCi0xMDAgPD0gYVtpXSA8PSAxMDAKKi8KI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgdXAoaSxhLGIpIGZvciAoaW50IGkgPSAoaW50KWE7IGkgPD0gKGludCliOyBpKyspCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbjsKaW50IGFbMjAxXTsKaW50IHRhcmdldCwgY2hvb3NlOwoKaW50IG9mZnNldDsKCmludCBzdW1fcG9zLCBzdW1fbmVnOwppbnQgZHBbMl1bMjAxKjIwMV1bMjAxXTsgLy9kcFtpXVtqXVtrXSA9IGR1bmcgZGVuIHNvIHRodSBpLCB0YW8gdGhhbmggdG9uZyBqLCBkYSBkdW5nIGR1b2MgayBzbwoKdm9pZCBzb2x2ZSgpewogICAgZHBbMF1bb2Zmc2V0XVswXSA9IC0xOwoKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKyl7CiAgICAgICAgZm9yIChpbnQgaiA9IHN1bV9uZWc7IGogPD0gc3VtX3BvczsgaisrKXsKICAgICAgICAgICAgZm9yIChpbnQgayA9IDA7IGsgPD0gaTsgaysrKXsKICAgICAgICAgICAgICAgIGRwWyhpICYgMSldW2ogKyBvZmZzZXRdW2tdID0gZHBbKGktMSkgJiAxXVtqICsgb2Zmc2V0XVtrXTsKICAgICAgICAgICAgICAgIGlmIChrID09IDApIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgaWYgKGogLSBhW2ldID49IHN1bV9uZWcgJiYgaiAtIGFbaV0gPD0gc3VtX3Bvcyl7CiAgICAgICAgICAgICAgICAgICAgaWYgKGRwWyhpLTEpICYgMV1baiAtIGFbaV0gKyBvZmZzZXRdW2stMV0gIT0gMCl7IC8vY2hvbiBhW2ldID8KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRwWyhpICYgMSldW2ogKyBvZmZzZXRdW2tdID09IDApewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHBbKGkgJiAxKV1baiArIG9mZnNldF1ba10gPSBpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Cgp2b2lkIHRyYWNlKGludCB0YXJnZXQsIGludCBsYXN0LCBpbnQgY2hvb3NlKXsKICAgIHZlY3RvcjxpbnQ+IHBhdGg7CiAgICB3aGlsZSAoY2hvb3NlICE9IDApewogICAgICAgIGludCB4ID0gZHBbKGxhc3QgJiAxKV1bdGFyZ2V0ICsgb2Zmc2V0XVtjaG9vc2VdOwogICAgICAgIHRhcmdldCAtPSBhW3hdOwogICAgICAgIHBhdGgucHVzaF9iYWNrKHgpOwogICAgICAgIGxhc3QgPSAoeCAmIDEpOwogICAgICAgIC0tY2hvb3NlOwogICAgfQogICAgZm9yIChhdXRvIHggOiBwYXRoKSBjb3V0IDw8IGFbeF0gPDwgIiAiOwogICAgY291dCA8PCAiXG4iOwp9CgpzaWduZWQgbWFpbigpewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKDApOwogICAgI2RlZmluZSBUYXNrICJBIgogICAgaWYgKGZvcGVuKFRhc2siLmlucCIsICJyIikpewogICAgICAgIGZyZW9wZW4oVGFzayIuaW5wIiwgInIiLCBzdGRpbik7CiAgICAgICAgZnJlb3BlbihUYXNrIi5vdXQiLCAidyIsIHN0ZG91dCk7CiAgICB9CgogICAgY2luID4+IG4gPj4gdGFyZ2V0ID4+IGNob29zZTsKICAgIHVwKGksMSxuKXsKICAgICAgICBjaW4gPj4gYVtpXTsKICAgICAgICBpZiAoYVtpXSA8IDApIHN1bV9uZWcgKz0gYVtpXTsKICAgICAgICBlbHNlIHN1bV9wb3MgKz0gYVtpXTsKICAgIH0KICAgIG9mZnNldCA9IC1zdW1fbmVnOwoKICAgIHNvbHZlKCk7CgogICAgaWYgKGRwWyhuICYgMSldW3RhcmdldCArIG9mZnNldF1bY2hvb3NlXSAhPSAwKXsKICAgICAgICB0cmFjZSh0YXJnZXQsIGRwWyhuICYgMSldW3RhcmdldCArIG9mZnNldF1bY2hvb3NlXSwgY2hvb3NlKTsKICAgIH0KfQo=
NDkgMTA3IDIzCi0xMCAtOTEgLTMxIDg4IC03OCAtMTYgLTg0IC04NiA3OCAtMzcgLTQ4IC02NSAtNzIgLTIyIDc5IDAgNjUgNzEgLTE0IDQ1IDYzIC0zIC0zNiA5MyA1NSAxOCA1NyAtNjEgODEgODYgLTIwIC0zNiAtNjMgLTIwIC03OSAtOTggLTYgLTY0IC0zNSAzOSAtODAgMjIgNjYgLTMgLTI3IC00MiA4NyAtNzkgLTY4IA==
49 107 23
-10 -91 -31 88 -78 -16 -84 -86 78 -37 -48 -65 -72 -22 79 0 65 71 -14 45 63 -3 -36 93 55 18 57 -61 81 86 -20 -36 -63 -20 -79 -98 -6 -64 -35 39 -80 22 66 -3 -27 -42 87 -79 -68