Yes, you would still need those side conditions. I'm not proposing a change to the semantics of the semantics, I just don't really want a "midWriteSpecific" production (write-specific is bad enough) which combines both making the unions unknown and writeBytes when we can cleanly separate those two functions.