minor decoding corner case bugfixes to do with overdecoding