#include <iostream>
#include <locale>
#include <functional>
#include <algorithm>
#include <string>
std::string &stringToLower(std::string &str) {
using namespace std::placeholders;
auto tolower_f = std::bind(std::tolower<char>, _1, std::locale());
std::transform(str.begin(), str.end(), str.begin(), tolower_f);
return str;
}
int main() {
std::string str("AlA Ma koTa");
std::cout << stringToLower(str);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bG9jYWxlPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPHN0cmluZz4KCnN0ZDo6c3RyaW5nICZzdHJpbmdUb0xvd2VyKHN0ZDo6c3RyaW5nICZzdHIpIHsKICB1c2luZyBuYW1lc3BhY2Ugc3RkOjpwbGFjZWhvbGRlcnM7ICAgCiAgYXV0byB0b2xvd2VyX2YgPSBzdGQ6OmJpbmQoc3RkOjp0b2xvd2VyPGNoYXI+LCBfMSwgc3RkOjpsb2NhbGUoKSk7CiAgICAKICBzdGQ6OnRyYW5zZm9ybShzdHIuYmVnaW4oKSwgc3RyLmVuZCgpLCBzdHIuYmVnaW4oKSwgdG9sb3dlcl9mKTsKICByZXR1cm4gc3RyOwp9CgppbnQgbWFpbigpIHsKICBzdGQ6OnN0cmluZyBzdHIoIkFsQSBNYSBrb1RhIik7CiAgCiAgc3RkOjpjb3V0IDw8IHN0cmluZ1RvTG93ZXIoc3RyKTsKCiAgcmV0dXJuIDA7Cn0=