#include<bits/stdc++.h>
using namespace std;
int n;
char a[2];
int Map[205][205];
int du[205];
int cnt;
char ans[205];
bool flag;
int head;
void dfs(int x) {
for(int i = 65; i <= 125; i++){
if(Map[i][x] >= 1){
Map[i][x]--, Map[x][i]--;
dfs(i);
}
}
ans[n--] = x;
}
signed main() {
cin >> n;
for(int i = 1; i <= n; i++){
cin >> a;
Map[a[0]][a[1]]++, Map[a[1]][a[0]]++;
du[a[0]]++, du[a[1]]++;
}
for(int i = 65; i <= 125; i++){
if(du[i] % 2 == 1){
flag = 1;
cnt++;
}
}
if(flag || (cnt > 0 && cnt != 2))cout << "No Solution";
else{
for(int i = 65; i <= 125; i++){
if(du[i] == 1)head = i;
}
dfs(head);
cout << ans;
}
}