#include <queue>
#include <string>
#include <iostream>

using namespace std;

void Babel(const string & A, int n)
{
  queue<string> q;
  q.push("");
  string temp;
  while(!q.empty())
  {
    temp = q.front();
    q.pop();
    cout << '\"'<< temp << '\"' << endl;
    if (temp.size() < n)
    {
      for (char c : A)
	q.push(temp + c);
    }
  }
  return;
}

int main()
{
  Babel("ABC", 3);
  return 0;
}

