decode with UTF8
Merge decode-with-utf8 branch