moved a bunch of logic into the InstSeq class