added encoding_detect