DecoderState is hashable. objects are only equal if they are the same object