#include <iostream>
std::string operator"" _hmm (const char* str, size_t size) {
std::string result;
for (size_t i = 0u; i < size; ++i) {
result += "0x" + [](unsigned char c) {
std::string hex;
auto toH = [](unsigned char c) {
return (c > 9u) ? ('a' + c - 10u) : ('0' + c);
};
hex += toH(c >> 4u);
hex += toH(c & 0xFu);
return hex;
}(str[i]) + ' ';
}
return result;
}
int main() {
std::cout << "Test"_hmm << "\n" <<
u8"Бля, Злак, прекращай, пожалуйста."_hmm << "\n" <<
"Бля, Злак, прекращай, пожалуйста."_hmm;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RkOjpzdHJpbmcgb3BlcmF0b3IiIiBfaG1tIChjb25zdCBjaGFyKiBzdHIsIHNpemVfdCBzaXplKSB7CglzdGQ6OnN0cmluZyByZXN1bHQ7CgkKCWZvciAoc2l6ZV90IGkgPSAwdTsgaSA8IHNpemU7ICsraSkgewoJCXJlc3VsdCArPSAiMHgiICsgW10odW5zaWduZWQgY2hhciBjKSB7CgkJCXN0ZDo6c3RyaW5nIGhleDsKCQkKCQkJYXV0byB0b0ggPSBbXSh1bnNpZ25lZCBjaGFyIGMpIHsKCQkJCXJldHVybiAoYyA+IDl1KSA/ICgnYScgKyBjIC0gMTB1KSA6ICgnMCcgKyBjKTsKCQkJfTsKCQkJCgkJCWhleCArPSB0b0goYyA+PiA0dSk7CgkJCWhleCArPSB0b0goYyAmIDB4RnUpOwoJCQkKCQkJcmV0dXJuIGhleDsKCQl9KHN0cltpXSkgKyAnICc7Cgl9CgkKCXJldHVybiByZXN1bHQ7Cn0KCmludCBtYWluKCkgewoJc3RkOjpjb3V0IDw8ICJUZXN0Il9obW0gPDwgIlxuIiA8PCAKCXU4ItCR0LvRjywg0JfQu9Cw0LosINC/0YDQtdC60YDQsNGJ0LDQuSwg0L/QvtC20LDQu9GD0LnRgdGC0LAuIl9obW0gPDwgIlxuIiA8PCAKCSLQkdC70Y8sINCX0LvQsNC6LCDQv9GA0LXQutGA0LDRidCw0LksINC/0L7QttCw0LvRg9C50YHRgtCwLiJfaG1tOwoJcmV0dXJuIDA7Cn0=