Encoding and Decoding Process