add charset autodetection