much better NCHAR handling