#include <bits/stdc++.h>
using namespace std;
template <typename T>
static ostream& operator<<(ostream& stream, const vector<T>& t);
template <typename T>
static istream& read(T, T, istream& = cin);
int test(string s) {
  assert(s.back() != ' ');
  cout << s << endl;
  int ans;
  cin >> ans;
  if (ans == 0) exit(0);
  return ans;
}
void __() {
  int n = test("a") + 1;
  if (n == 301) {
    test(string(n - 1, 'b'));
  }
  string s(n, 'a');
  int base = test(s);
  if (base == n) {
    test(string(n - 1, 'b'));
    test(string(n, 'b'));
  }
  for (int i = 0; i < n - 1; ++i) {
    s[i] = 'b';
    if (test(s) > base)
      s[i] = 'a';
    else
      --base;
  }
  assert(base <= 1);
  if (base == 1) s[n - 1] = 'b';
  test(s);
}
int main() {
  cout << fixed << setprecision(15);
  __();
}
