#include <bits/stdc++.h>
using namespace std;
const long double pi = 3.14159265358979323846;
long long MOD;
const char nl = '\n';
const long long inf = 1e15;
long long mul(long long x, long long y) {
  return (1ll * (x % MOD) * (y % MOD));
}
long long modpow(long long x, long long y) {
  long long z = 1;
  while (y > 0) {
    if (y % 2) z = mul(z, x);
    x = mul(x, x);
    y /= 2;
  }
  return z;
}
long long power(long long x, long long y) {
  long long z = 1;
  while (y > 0) {
    if (y % 2) z = z * x;
    x = x * x;
    y /= 2;
  }
  return z;
}
long long gcd(long long a, long long b) {
  if (a < b) return gcd(b, a);
  if (b == 0) return a;
  return gcd(b, a % b);
}
long long min(long long a, long long b) {
  if (a < b) return a;
  return b;
}
long long max(long long a, long long b) {
  if (a > b) return a;
  return b;
}
long long sq(long long a) {
  long long ans = (1ll * a * a);
  return ans;
}
long long fact[500001];
void facto() {
  fact[0] = 1;
  for (long long i = 1; i < 500001; i++) {
    fact[i] = mul(i, fact[i - 1]);
    fact[i] %= MOD;
  }
}
long long inv(long long n) { return power(n, MOD - 2); }
long long divide(long long x, long long y) { return mul(x, inv(y)); }
long long ncr(long long n, long long r) {
  if (n < r) return 0;
  return divide(fact[n], mul(fact[n - r], fact[r]));
}
void solve() {
  vector<long long> posd;
  long long nis;
  for (long long i = 0; i < 10; i++) {
    for (long long j = 0; j < 4; j++) cout << i;
    cout << endl;
    long long b, c;
    cin >> b >> c;
    if (b + c > 0)
      posd.push_back(i);
    else
      nis = i;
  }
  long long ans[4];
  set<long long> s = {0, 1, 2, 3};
  for (long long x : posd) {
    long long rem = -1;
    for (long long i : s) {
      for (long long j = 0; j < 4; j++) {
        if (j == i)
          cout << x;
        else
          cout << nis;
      }
      cout << endl;
      long long b, c;
      cin >> b >> c;
      if (b == 1) {
        ans[i] = x;
        rem = i;
        break;
      }
    }
    s.erase(rem);
  }
  for (long long i = 0; i < 4; i++) cout << ans[i];
  cout << endl;
  long long b, c;
  cin >> b >> c;
  if (b == 4) return;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0), cout.tie(0);
  long long t = 1;
  while (t--) {
    solve();
  }
  cerr << "Time : " << 1000 * ((double)clock()) / (double)CLOCKS_PER_SEC
       << "ms\n";
}
