#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
def only_reserve_possible_answers(guess, bull, cow, al):
    anses = len(al)
    for k in xrange(anses - 1, -1, -1):
        if sum(1 for i, j in zip(al[k], guess)if i != j and j in al[k]) != cow \
                or sum(1 for i, j in zip(al[k], guess) if i == j) != bull:
            del al[k]
    return al
def main():
    answer_candidates = [str(i) + str(j) + str(k) + str(l) \
            for i in xrange(0, 10) for j in xrange(0, 10) \
            for k in xrange(0, 10) for l in xrange(0, 10) \
            if len(set(str(i) + str(j) + str(k) + str(l))) == 4]
    counter = 1
    while True:
        guess = answer_candidates[0]
        print guess
        sys.stdout.flush()
        score = sys.stdin.readline().strip()
        bulls, cows = int(score[0]), int(score[2])
        if bulls == 4:
            break
        answer_candidates = only_reserve_possible_answers(
                guess, bulls, cows, answer_candidates)
        counter += 1
    print 'tried times:', counter
if __name__ == '__main__':
    main()