add EncodeAuto()