fix a bug that pickle protocol version is statically specified in the code