#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <functional>
using namespace std;

vector<string> litery = {"", "", "ABC", "DEF", "GHI", "JKL", "MNO", "PQRS", "TUV", "WXYZ"};

int main() {
    string numer;
    long long K;
    cin >> numer >> K;

    vector<string> grupy_liter;
    for (char cyfra : numer) {
        grupy_liter.push_back(litery[cyfra - '0']);
    }

    string wynik;
    int n = grupy_liter.size();
    string aktualnaKombinacja(n, ' ');

    function<void(int, long long&)> backtrack = [&](int index, long long &licznik) {
        if (index == n) {
            licznik++;
            if (licznik == K) {
                wynik = aktualnaKombinacja;
            }
            return;
        }

        for (char litera : grupy_liter[index]) {
            aktualnaKombinacja[index] = litera;
            backtrack(index + 1, licznik);

            if (!wynik.empty()) return;
        }
    };

    long long licznik = 0;
    backtrack(0, licznik);
    cout << wynik << endl;
    return 0;
}
