Internationalization
Source can be ASCII, UTF-8, UTF-16, UTF-32
char[] UTF-8
wchar[] UTF-16
dchar[] UTF-32