#include <bits/stdc++.h>
#ifndef ONLINE_JUDGE
#include "debug.h"
#else
#define debug(...)
#endif
#define int long long
#define oo LLONG_MAX >> 2
#define all(x) x.begin(), x.end()
#define allr(x) x.rbegin(), x.rend()
#define pb push_back
#define pep_Guardiola \
ios::sync_with_stdio(0); \
cin.tie(0); \
cout.tie(0);
using namespace std;
void io()
{
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
#endif
}
int n;
struct Trie
{
struct Node
{
int freq;
string s = "";
map<string, int> id;
bool end = 0;
Node() = default;
};
vector<Node> trie;
Trie() : trie(1) {}
void insert(const vector<string> &s)
{
int node = 0;
int n = s.size();
for (int i = 0; i < n; i++)
{
string cVal = s[i];
if (!trie[node].id.count(cVal))
{
int cur = trie.size();
trie.emplace_back();
trie[node].id[cVal] = cur;
trie[cur].s = s[i];
trie[cur].id[trie[node].s] = node;
}
node = trie[node].id[cVal];
trie[node].freq++;
}
trie[node].end = 1;
}
int find(int node, int pr)
{
for (auto [k, v] : trie[node].id)
{
// cout << trie[v].freq << endl;
if (trie[v].freq > n / 2 && v != pr)
{
return find(v, node);
}
}
return node;
}
int help(int node, int pr, int len = 0)
{
cout << trie[node].s << ' ';
int ans = 0;
for (auto [k, v] : trie[node].id)
{
if (v != pr)
{
ans += help(v, node, len + 1);
}
}
cout << "Back\n";
return ans + (trie[node].end ? len : 0);
}
};
signed main()
{
pep_Guardiola
io();
cin >> n;
Trie tr;
for (int i = 0; i < n; i++)
{
string s;
cin >> s;
vector<string> a;
string cur = "";
for (auto x : s)
{
if (x == '/')
{
if (cur != "")
a.push_back(cur);
cur = "";
}
else
cur += x;
}
if (cur != "")
a.push_back(cur);
tr.insert(a);
}
int best = tr.find(0, -1);
cout << tr.trie[best].s << ' ' << best << endl;
cout << tr.help(best, -1, 0) << endl;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpZm5kZWYgT05MSU5FX0pVREdFCiNpbmNsdWRlICJkZWJ1Zy5oIgojZWxzZQojZGVmaW5lIGRlYnVnKC4uLikKI2VuZGlmCiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIG9vIExMT05HX01BWCA+PiAyCiNkZWZpbmUgYWxsKHgpIHguYmVnaW4oKSwgeC5lbmQoKQojZGVmaW5lIGFsbHIoeCkgeC5yYmVnaW4oKSwgeC5yZW5kKCkKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBwZXBfR3VhcmRpb2xhICAgICAgXAogIGlvczo6c3luY193aXRoX3N0ZGlvKDApOyBcCiAgY2luLnRpZSgwKTsgICAgICAgICAgICAgIFwKICBjb3V0LnRpZSgwKTsKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdm9pZCBpbygpCnsKI2lmbmRlZiBPTkxJTkVfSlVER0UKICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAvLyBmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpOwojZW5kaWYKfQppbnQgbjsKc3RydWN0IFRyaWUKewogIHN0cnVjdCBOb2RlCiAgewogICAgaW50IGZyZXE7CiAgICBzdHJpbmcgcyA9ICIiOwogICAgbWFwPHN0cmluZywgaW50PiBpZDsKICAgIGJvb2wgZW5kID0gMDsKICAgIE5vZGUoKSA9IGRlZmF1bHQ7CiAgfTsKICB2ZWN0b3I8Tm9kZT4gdHJpZTsKICBUcmllKCkgOiB0cmllKDEpIHt9CiAgdm9pZCBpbnNlcnQoY29uc3QgdmVjdG9yPHN0cmluZz4gJnMpCiAgewogICAgaW50IG5vZGUgPSAwOwogICAgaW50IG4gPSBzLnNpemUoKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKQogICAgewogICAgICBzdHJpbmcgY1ZhbCA9IHNbaV07CiAgICAgIGlmICghdHJpZVtub2RlXS5pZC5jb3VudChjVmFsKSkKICAgICAgewogICAgICAgIGludCBjdXIgPSB0cmllLnNpemUoKTsKICAgICAgICB0cmllLmVtcGxhY2VfYmFjaygpOwogICAgICAgIHRyaWVbbm9kZV0uaWRbY1ZhbF0gPSBjdXI7CiAgICAgICAgdHJpZVtjdXJdLnMgPSBzW2ldOwogICAgICAgIHRyaWVbY3VyXS5pZFt0cmllW25vZGVdLnNdID0gbm9kZTsKICAgICAgfQogICAgICBub2RlID0gdHJpZVtub2RlXS5pZFtjVmFsXTsKICAgICAgdHJpZVtub2RlXS5mcmVxKys7CiAgICB9CiAgICB0cmllW25vZGVdLmVuZCA9IDE7CiAgfQoKICBpbnQgZmluZChpbnQgbm9kZSwgaW50IHByKQogIHsKICAgIGZvciAoYXV0byBbaywgdl0gOiB0cmllW25vZGVdLmlkKQogICAgewogICAgICAvLyBjb3V0IDw8IHRyaWVbdl0uZnJlcSA8PCBlbmRsOwogICAgICBpZiAodHJpZVt2XS5mcmVxID4gbiAvIDIgJiYgdiAhPSBwcikKICAgICAgewogICAgICAgIHJldHVybiBmaW5kKHYsIG5vZGUpOwogICAgICB9CiAgICB9CiAgICByZXR1cm4gbm9kZTsKICB9CgogIGludCBoZWxwKGludCBub2RlLCBpbnQgcHIsIGludCBsZW4gPSAwKQogIHsKICAgIGNvdXQgPDwgdHJpZVtub2RlXS5zIDw8ICcgJzsKICAgIGludCBhbnMgPSAwOwogICAgZm9yIChhdXRvIFtrLCB2XSA6IHRyaWVbbm9kZV0uaWQpCiAgICB7CiAgICAgIGlmICh2ICE9IHByKQogICAgICB7CiAgICAgICAgYW5zICs9IGhlbHAodiwgbm9kZSwgbGVuICsgMSk7CiAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgIkJhY2tcbiI7CiAgICByZXR1cm4gYW5zICsgKHRyaWVbbm9kZV0uZW5kID8gbGVuIDogMCk7CiAgfQp9OwoKc2lnbmVkIG1haW4oKQp7CiAgcGVwX0d1YXJkaW9sYQogIGlvKCk7CiAgY2luID4+IG47CiAgVHJpZSB0cjsKICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICB7CiAgICBzdHJpbmcgczsKICAgIGNpbiA+PiBzOwogICAgdmVjdG9yPHN0cmluZz4gYTsKICAgIHN0cmluZyBjdXIgPSAiIjsKICAgIGZvciAoYXV0byB4IDogcykKICAgIHsKICAgICAgaWYgKHggPT0gJy8nKQogICAgICB7CiAgICAgICAgaWYgKGN1ciAhPSAiIikKICAgICAgICAgIGEucHVzaF9iYWNrKGN1cik7CiAgICAgICAgY3VyID0gIiI7CiAgICAgIH0KICAgICAgZWxzZQogICAgICAgIGN1ciArPSB4OwogICAgfQogICAgaWYgKGN1ciAhPSAiIikKICAgICAgYS5wdXNoX2JhY2soY3VyKTsKICAgIHRyLmluc2VydChhKTsKICB9CgogIGludCBiZXN0ID0gdHIuZmluZCgwLCAtMSk7CiAgY291dCA8PCB0ci50cmllW2Jlc3RdLnMgPDwgJyAnIDw8IGJlc3QgPDwgZW5kbDsKICBjb3V0IDw8IHRyLmhlbHAoYmVzdCwgLTEsIDApIDw8IGVuZGw7Cn0=