Merge: Use `UInt32` to manipulate Unicode chars and support 32 bits platforms