#include <iostream>
#include <set>
#include <string>
using namespace std;
bool compare_(const string &s1, const string &s2)
{
if(s1.size() < s2.size()) return true;
if(s1.size() > s2.size()) return false;
return s1 < s2;
}
int main() {
set<string, bool(*)(const string &, const string &)> solution(compare_);
solution.insert("12X451");
solution.insert("X23454");
solution.insert("12345");
solution.insert("12315");
solution.insert("123111");
solution.insert("5231");
for (auto s : solution)
{
cout << s << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKYm9vbCBjb21wYXJlXyhjb25zdCBzdHJpbmcgJnMxLCBjb25zdCBzdHJpbmcgJnMyKQp7CiAgaWYoczEuc2l6ZSgpIDwgczIuc2l6ZSgpKSByZXR1cm4gdHJ1ZTsKICBpZihzMS5zaXplKCkgPiBzMi5zaXplKCkpIHJldHVybiBmYWxzZTsKICByZXR1cm4gczEgPCBzMjsKfQoKaW50IG1haW4oKSB7CglzZXQ8c3RyaW5nLCBib29sKCopKGNvbnN0IHN0cmluZyAmLCBjb25zdCBzdHJpbmcgJik+IHNvbHV0aW9uKGNvbXBhcmVfKTsKCiAgICBzb2x1dGlvbi5pbnNlcnQoIjEyWDQ1MSIpOwogICAgc29sdXRpb24uaW5zZXJ0KCJYMjM0NTQiKTsKICAgIHNvbHV0aW9uLmluc2VydCgiMTIzNDUiKTsKICAgIHNvbHV0aW9uLmluc2VydCgiMTIzMTUiKTsKICAgIHNvbHV0aW9uLmluc2VydCgiMTIzMTExIik7CiAgICBzb2x1dGlvbi5pbnNlcnQoIjUyMzEiKTsKCiAgICBmb3IgKGF1dG8gcyA6IHNvbHV0aW9uKQogICAgewogICAgICAgIGNvdXQgPDwgcyA8PCBlbmRsOwogICAgfQoJcmV0dXJuIDA7Cn0=