/// Rule: every block leaves exactly as long as it arrived, whatever /// is being held back, or the output would run short.