Revert "reverted too much"

This reverts commit ba70f309c5aa1e10be0b8d34105550bd9b7adaca.
Revert "revert unicode translation"

This reverts commit 4e1deca5a576b49aabc911563a48f7cca8cb14f4.
Revert "use unicode"

This reverts commit 32278f2008bf90dcaf629c4d184ee7bb721e2e06.