change the encoder
change the encoder
finish test cases firt edition