Use self. Support decoding