updated new decoder