-- For debugging purposes
whenClass :: String -> InstrM () -> InstrM ()
whenClass cls m = do
  InstrState { isCtrlFlow } <- get
  when (CF.getThis (CF.locals isCtrlFlow) == cls) m
whenClass :: String -> InstrM () -> InstrM ()
whenClass cls m = do
  InstrState { isCtrlFlow } <- get
  when (CF.getThis (CF.locals isCtrlFlow) == cls) m
whenClass cls m = do
  InstrState { isCtrlFlow } <- get
  when (CF.getThis (CF.locals isCtrlFlow) == cls) m