#include <bits/stdc++.h>

using namespace std;

#define _GLIBCXX_DEBUG
#define dump(c) cerr << "> " << #c << " = " << (c) << endl
#define all(c) ((c).begin()), ((c).end())
#define rep(i,n) for(int i=0;i<n;i++)
#define FOR(i,s,e) for(int (i)=(int)(s);(i)<(int)(e);++(i))
#define inf 0x3f3f3f3f
#define infl 0x3f3f3f3f3f3f3f3fLL

typedef long long ll;
typedef unsigned long long ull;

void print_array(int a[], int n){rep(i,n){if(i<n-1){cout<<a[i]<<" ";}else{cout<<a[i]<<endl;}}}
void print_vector(vector<int> v){rep(i,v.size()){if(i<v.size()-1){cout<<v[i]<<" ";}else{cout<<v[i]<<endl;}}}

int main() {
    array<bool, 10> num = {0};
    array<int, 4> ans = {0};
    int x = 1;
    int y = 0;
    int unUsed;
    while (true){
        int a, b, c, d;
        while (!(a!=b!=c!=d)){
            a = rand()%10;
            b = rand()%10;
            c = rand()%10;
            d = rand()%10;
        }
        cout << a << " " << b << " " << c << " " << d << endl;
        cin >> x >> y;
        if (x==4 && y == 0) break;
    }
    return 0;
}