Add first pass at decoder