@Override
 public DataType visitWhile_stmt(@NotNull PythonParser.While_stmtContext ctx) {
   Label continueLabel = new Label();
   Label breakLabel = new Label();
   Label elseLabel = new Label();
   scope.enterLoop(continueLabel, breakLabel);
   mv.visitLabel(continueLabel);
   visitTest(ctx.test());
   //        verifyType(visitExpression(ctx.expression()), PrimitiveType.BOOLEAN, ctx);
   mv.visitJumpInsn(IFEQ, elseLabel);
   visitSuite(ctx.suite(0));
   mv.visitJumpInsn(GOTO, continueLabel);
   mv.visitLabel(elseLabel);
   if (ctx.suite(1) != null) visitSuite(ctx.suite(1));
   mv.visitLabel(breakLabel);
   scope.exitLoop();
   return null;
 }