The serializer would crash whenever it encountered a unicode char. - Convert V8's strings into UTF8 chars instead of trying to convert them to ASCII, and set the input stream encoding for the serializer to UTF8. This also avoids the issue of endianness for this direction. - Skip an unnecessary ToString() right after checking IsString(). - Allow unescaped unicode in the yaml output. With escaping the output non-ASCII content is basically unreadable.