#include <bits/stdc++.h>
using namespace std;
map<long long, bool> used;
int google = 1;
void add(long long n, long long i) {
  if (n >= 10000000000) return;
  long long r1, r2;
}
bool is_prime(int n) {
  if (n <= 3) return 1;
  for (int i = 2; i * i <= n; i++) {
    if (n % i == 0) return 0;
  }
  return 1;
}
long long Gcd(long long a, long long b) { return b == 0 ? a : Gcd(b, a % b); }
long long lcm(long long a, long long b) { return (a * b) / Gcd(a, b); }
void solve() {
  map<string, int> mp;
  string s;
  cin >> s;
  string temp;
  for (int i = 0; i < 10; i++) {
    cin >> temp;
    mp[temp] = i;
  }
  temp = "";
  for (int i = 0; i < s.length(); i++) {
    temp += s[i];
    if ((i + 1) % 10 == 0) {
      cout << mp[temp];
      temp = "";
    }
  }
}
long long mul(long long n1, long long n2, long long o) {
  return n1 == 1 ? n2 : mul(n1 - 1, n2 + o, o);
}
long long div(long long r, long long n2, long long o) {
  return n2 < 0 ? r - 1 : div(r + 1, n2 - o, o);
}
int main() {
  solve();
  return 0;
}
