#include <bits/stdc++.h>
using namespace std;
template <typename _T>
inline void _DBG(const char *s, _T x) {
  cerr << s << " = " << x << "\n";
}
template <typename _T, typename... args>
void _DBG(const char *s, _T x, args... a) {
  while (*s != ',') cerr << *s++;
  cerr << " = " << x << ',';
  _DBG(s + 1, a...);
}
int ask(string s) {
  cout << s << endl;
  cout.flush();
  int x;
  cin >> x;
  if (x == 0) {
    exit(0);
  }
  return x;
}
int main() {
  string aaa = "";
  for (int i = 0; i < 300; i++) aaa.push_back('a');
  int na = 300 - ask(aaa);
  string bbb = "";
  for (int i = 0; i < 300; i++) bbb.push_back('b');
  int nb = 300 - ask(bbb);
  string s = aaa;
  s.resize(na + nb);
  if (na + nb == 1) {
    if (na == 1)
      ask("a");
    else
      ask("b");
  }
  int n = na + nb;
  int cnt[2] = {0, 0};
  s.back() = 'b';
  int last = ask(s);
  for (int i = 0; i < n - 1; i++) {
    s[i] = (s[i] == 'a' ? 'b' : 'a');
    if (i == n - 2) {
      if (cnt[0] == na - 1 && cnt[1] == nb - 1)
        s[i + 1] = (s[i] == 'a' ? 'b' : 'a');
      else if (cnt[0] == na - 2)
        s[i] = s[i + 1] = 'a';
      else
        s[i] = s[i + 1] = 'b';
    }
    int tmp = ask(s);
    if (tmp < last)
      last = tmp;
    else
      s[i] = (s[i] == 'a' ? 'b' : 'a');
    cnt[s[i] - 'a']++;
  }
  return 0;
}
