def generate_sequences(s, n, count, sequences):
if n == 0:
count[0] += 1
sequences.append(s)
return
# Добавляем '3'
generate_sequences(s + '3', n - 1, count, sequences)
# Добавляем 'А'
generate_sequences(s + 'А', n - 1, count, sequences)
# Добавляем 'И'
generate_sequences(s + 'И', n - 1, count, sequences)
# Добавляем 'П'
generate_sequences(s + 'П', n - 1, count, sequences)
# Добавляем 'С'
generate_sequences(s + 'С', n - 1, count, sequences)
# Добавляем 'Б', если условия выполнены
if len(s) > 0 and s[-1] not in ['А', 'И']:
generate_sequences(s + 'Б', n - 1, count, sequences)
n = int(input())
sequences = []
count = [0]
generate_sequences('', n, count, sequences)
print(count[0])
for seq in sorted(sequences):
print(seq)