use StringDecoder