fast encode/decode