weedStatement (While expression block)
  | isJust exprError = exprError
  | isJust blockError = blockError
  where exprError = weedExpression expression
        blockError = weedStatementBlock $ Just block
weedStatement (While expression block)
  | isJust exprError = exprError
  | isJust blockError = blockError
  where exprError = weedExpression expression
        blockError = weedStatementBlock $ Just block
weedStatement (While expression block)
  | isJust exprError = exprError
  | isJust blockError = blockError
  where exprError = weedExpression expression
        blockError = weedStatementBlock $ Just block