add more decoder logic