#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#pragma GCC diagnostic ignored "-Wunused-result"
unsigned long function(unsigned long x) { return x*x-x+1; }
int main()
{
unsigned long n;
scanf("%lu", &n);
unsigned long length = function(n);
char* string = malloc(length + 1);
string[0] = 'a';
string[length] = 0;
unsigned long index = 1;
for(unsigned long i = 1; i < n; i++)
{
string[index] = 'a';
for(unsigned long j = 0; j < index; j++) { string[j]++; }
memcpy(string + index + 1, string, index);
index = function(i + 1) + 1;
}
printf("%s", string);
}
#pragma GCC diagnostic pop