#include <iostream>
#include <algorithm>
using namespace std;
int digit_decomp(int num, int digits[]) {
int i;
for (i = 0; num; i++) {
digits[i] = num % 10;
num /= 10;
}
return i;
}
int main() {
int N = 0;
int K[3] = { 0 };
int N_digits = 0;
int num_K = 0;
int digits[9] = { 0 };
int ans[9] = { 0 };
cin >> N >> num_K;
for (int i = 0; i < num_K; i++) {
cin >> K[i];
}
sort(K, K + num_K, greater<int>());
N_digits = digit_decomp(N, digits);
bool sw0 = false, sw1 = false;
for (int i = N_digits - 1; i >= 0; i--) {
for (int j = 0; j < num_K; j++) {
if (sw1) {
ans[i] = K[j];
break;
}
if (digits[i] == K[j]) {
if (i > 0 && digits[i - 1] >= K[num_K - 1]) {
ans[i] = K[j];
break;
}
}
if (digits[i] > K[j]) {
ans[i] = K[j];
sw1 = true;
break;
}
if (j == num_K - 1) {
sw0 = true;
}
}
if (sw0) {
sw0 = false;
for (int j = 1; i + j < N_digits - 1; j++) {
if (ans[i + j] != K[num_K - 1]) {
i = i + j;
for (int k = 2; k < num_K; k++) {
if (ans[i] == K[num_K - k]) {
ans[i] = K[num_K - k + 1];
sw1 = true;
break;
}
}
break;
}
}
if (!sw1) {
N_digits -= 1;
i = N_digits - 1;
sw1 = true;
}
}
}
for (int i = N_digits - 1; i >= 0; i--) {
cout << ans[i];
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGRpZ2l0X2RlY29tcChpbnQgbnVtLCBpbnQgZGlnaXRzW10pIHsKCWludCBpOwoJZm9yIChpID0gMDsgbnVtOyBpKyspIHsKCQlkaWdpdHNbaV0gPSBudW0gJSAxMDsKCQludW0gLz0gMTA7Cgl9CglyZXR1cm4gaTsKfQoKaW50IG1haW4oKSB7CglpbnQgTiA9IDA7CglpbnQgS1szXSA9IHsgMCB9OwoJaW50IE5fZGlnaXRzID0gMDsKCWludCBudW1fSyA9IDA7CglpbnQgZGlnaXRzWzldID0geyAwIH07CiAgICBpbnQgYW5zWzldID0geyAwIH07CgkKCWNpbiA+PiBOID4+IG51bV9LOwoJCglmb3IgKGludCBpID0gMDsgaSA8IG51bV9LOyBpKyspIHsKCQljaW4gPj4gS1tpXTsKCX0KCQoJc29ydChLLCBLICsgbnVtX0ssIGdyZWF0ZXI8aW50PigpKTsKCQoJTl9kaWdpdHMgPSBkaWdpdF9kZWNvbXAoTiwgZGlnaXRzKTsKCQoJYm9vbCBzdzAgPSBmYWxzZSwgc3cxID0gZmFsc2U7Cglmb3IgKGludCBpID0gTl9kaWdpdHMgLSAxOyBpID49IDA7IGktLSkgewoJCWZvciAoaW50IGogPSAwOyBqIDwgbnVtX0s7IGorKykgewoJCQlpZiAoc3cxKSB7CgkJCQlhbnNbaV0gPSBLW2pdOwoJCQkJYnJlYWs7CgkJCX0KCQkJaWYgKGRpZ2l0c1tpXSA9PSBLW2pdKSB7CgkJCQlpZiAoaSA+IDAgJiYgZGlnaXRzW2kgLSAxXSA+PSBLW251bV9LIC0gMV0pIHsKCQkJCQlhbnNbaV0gPSBLW2pdOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJCWlmIChkaWdpdHNbaV0gPiBLW2pdKSB7CgkJCQlhbnNbaV0gPSBLW2pdOwogICAgICAgICAgICAgICAgc3cxID0gdHJ1ZTsKCQkJCWJyZWFrOwoJCQl9CgkJCWlmIChqID09IG51bV9LIC0gMSkgewoJCQkJc3cwID0gdHJ1ZTsKCQkJfQoJCX0KCQlpZiAoc3cwKSB7CgkJCXN3MCA9IGZhbHNlOwoJCQlmb3IgKGludCBqID0gMTsgaSArIGogPCBOX2RpZ2l0cyAtIDE7IGorKykgewoJCQkJaWYgKGFuc1tpICsgal0gIT0gS1tudW1fSyAtIDFdKSB7CgkJCQkJaSA9IGkgKyBqOwoJCQkJCWZvciAoaW50IGsgPSAyOyBrIDwgbnVtX0s7IGsrKykgewoJCQkJCQlpZiAoYW5zW2ldID09IEtbbnVtX0sgLSBrXSkgewoJCQkJCQkJYW5zW2ldID0gS1tudW1fSyAtIGsgKyAxXTsKCQkJCQkJCXN3MSA9IHRydWU7CgkJCQkJCQlicmVhazsKCQkJCQkJfQoJCQkJCX0KCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlpZiAoIXN3MSkgewoJCQkJTl9kaWdpdHMgLT0gMTsKCQkJCWkgPSBOX2RpZ2l0cyAtIDE7CgkJCQlzdzEgPSB0cnVlOwoJCQl9CgkJfQoJfQoJCglmb3IgKGludCBpID0gTl9kaWdpdHMgLSAxOyBpID49IDA7IGktLSkgewoJCWNvdXQgPDwgYW5zW2ldOwoJfQoJcmV0dXJuIDA7Cn0=