#include <bits/stdc++.h>
using namespace std;
template <class T>
inline bool updateMin(T& a, T b) {
  return a > b ? a = b, 1 : 0;
}
template <class T>
inline bool updateMax(T& a, T b) {
  return a < b ? a = b, 1 : 0;
}
inline int nextInt() {
  int x;
  scanf("%d", &x);
  return x;
}
inline long long nextI64() {
  long long d;
  cin >> d;
  return d;
}
inline char nextChr() {
  scanf(" ");
  return getchar();
}
inline string nextStr() {
  string s;
  cin >> s;
  return s;
}
inline double nextDbf() {
  double x;
  scanf("%lf", &x);
  return x;
}
inline long long nextlld() {
  long long d;
  scanf("%lld", &d);
  return d;
}
inline long long next64d() {
  long long d;
  scanf("%I64d", &d);
  return d;
}
int main() {
  int n = nextInt();
  string ans = "";
  while (n >= 4) {
    ans += "aabb";
    n -= 4;
  }
  int res = n % 4;
  switch (res) {
    case 1:
      ans += "a";
      break;
    case 2:
      ans += "aa";
      break;
    case 3:
      ans += "aab";
      break;
    default:
      break;
  }
  cout << ans << endl;
  return 0;
}
