improved unicode support without external packages