#include <iostream>
using namespace std;
int main() {
int n;
cin>>n;
int a[n];
for(int i=0; i<n; i++){
cin>>a[i];
}
int s;
cin>>s;
int dp[s+1]={0,};
for(int i=0; i<n; i++){
for(int j=a[i]; j<=s; j++){
if(dp[j-a[i]]>0 or j==a[i]){
if(dp[j]>dp[j-a[i]]+1 or dp[j]==0)
dp[j]=dp[j-a[i]]+1;
}
}
}
if(dp[s]==0){
cout<<"No solution"<<endl;
return 0;
}
while(dp[s]>0){
for (int i=0; i<n; i++){
if(s-a[i]>=0 and dp[s]==dp[s-a[i]]+1){
cout<<a[i]<<" ";
s-=a[i];
break;
}
}
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CglpbnQgbjsKCWNpbj4+bjsKCWludCBhW25dOwoJZm9yKGludCBpPTA7IGk8bjsgaSsrKXsKCQljaW4+PmFbaV07Cgl9CglpbnQgczsKCWNpbj4+czsKCWludCBkcFtzKzFdPXswLH07Cglmb3IoaW50IGk9MDsgaTxuOyBpKyspewoJCWZvcihpbnQgaj1hW2ldOyBqPD1zOyBqKyspewoJCQlpZihkcFtqLWFbaV1dPjAgb3Igaj09YVtpXSl7CgkJCQlpZihkcFtqXT5kcFtqLWFbaV1dKzEgb3IgZHBbal09PTApCgkJCQkJZHBbal09ZHBbai1hW2ldXSsxOwoJCQkJCQoJCQl9CgkJfQoJfQoJaWYoZHBbc109PTApewoJCWNvdXQ8PCJObyBzb2x1dGlvbiI8PGVuZGw7CglyZXR1cm4gMDsKCX0KCXdoaWxlKGRwW3NdPjApewoJCWZvciAoaW50IGk9MDsgaTxuOyBpKyspewoJCQlpZihzLWFbaV0+PTAgYW5kIGRwW3NdPT1kcFtzLWFbaV1dKzEpewoJCQkJY291dDw8YVtpXTw8IiAiOwoJCQkJcy09YVtpXTsKCQkJCWJyZWFrOwoJCQl9CgkJfQoJfQp9