1 [
   2   {
   3     "condition": {
   4       "endPosition": "18",
   5       "kind": "BOOLEAN_LITERAL",
   6       "value": "false",
   7       "startPosition": "13"
   8     },
   9     "endPosition": "19",
  10     "kind": "DO_WHILE_LOOP",
  11     "statement": {
  12       "endPosition": "6",
  13       "kind": "BLOCK",
  14       "statements": [],
  15       "startPosition": "4"
  16     },
  17     "startPosition": "1"
  18   },
  19   {
  20     "condition": {
  21       "endPosition": "42",
  22       "kind": "BOOLEAN_LITERAL",
  23       "value": "true",
  24       "startPosition": "38"
  25     },
  26     "endPosition": "43",
  27     "kind": "DO_WHILE_LOOP",
  28     "statement": {
  29       "endPosition": "31",
  30       "kind": "BLOCK",
  31       "statements": [
  32         {
  33           "endPosition": "30",
  34           "kind": "BREAK",
  35           "label": "null",
  36           "startPosition": "24"
  37         }
  38       ],
  39       "startPosition": "23"
  40     },
  41     "startPosition": "20"
  42   },
  43   {
  44     "condition": {
  45       "leftOperand": {
  46         "endPosition": "76",
  47         "kind": "IDENTIFIER",
  48         "name": "a",
  49         "startPosition": "75"
  50       },
  51       "endPosition": "81",
  52       "kind": "EQUAL_TO",
  53       "rightOperand": {
  54         "endPosition": "81",
  55         "kind": "NUMBER_LITERAL",
  56         "value": "2",
  57         "startPosition": "80"
  58       },
  59       "startPosition": "75"
  60     },
  61     "endPosition": "82",
  62     "kind": "DO_WHILE_LOOP",
  63     "statement": {
  64       "endPosition": "68",
  65       "kind": "BLOCK",
  66       "statements": [
  67         {
  68           "endPosition": "67",
  69           "kind": "BREAK",
  70           "label": "label",
  71           "startPosition": "55"
  72         }
  73       ],
  74       "startPosition": "54"
  75     },
  76     "startPosition": "51"
  77   },
  78   {
  79     "condition": {
  80       "leftOperand": {
  81         "leftOperand": {
  82           "endPosition": "112",
  83           "kind": "IDENTIFIER",
  84           "name": "a",
  85           "startPosition": "111"
  86         },
  87         "endPosition": "116",
  88         "kind": "PLUS",
  89         "rightOperand": {
  90           "endPosition": "116",
  91           "kind": "IDENTIFIER",
  92           "name": "b",
  93           "startPosition": "115"
  94         },
  95         "startPosition": "111"
  96       },
  97       "endPosition": "121",
  98       "kind": "GREATER_THAN",
  99       "rightOperand": {
 100         "endPosition": "121",
 101         "kind": "NUMBER_LITERAL",
 102         "value": "20",
 103         "startPosition": "119"
 104       },
 105       "startPosition": "111"
 106     },
 107     "endPosition": "122",
 108     "kind": "DO_WHILE_LOOP",
 109     "statement": {
 110       "endPosition": "105",
 111       "kind": "BLOCK",
 112       "statements": [
 113         {
 114           "condition": {
 115             "endPosition": "103",
 116             "kind": "FUNCTION_INVOCATION",
 117             "functionSelect": {
 118               "endPosition": "101",
 119               "kind": "IDENTIFIER",
 120               "name": "func1",
 121               "startPosition": "96"
 122             },
 123             "arguments": [],
 124             "startPosition": "96"
 125           },
 126           "endPosition": "104",
 127           "kind": "DO_WHILE_LOOP",
 128           "statement": {
 129             "endPosition": "90",
 130             "kind": "BLOCK",
 131             "statements": [],
 132             "startPosition": "88"
 133           },
 134           "startPosition": "86"
 135         }
 136       ],
 137       "startPosition": "85"
 138     },
 139     "startPosition": "83"
 140   },
 141   {
 142     "condition": {
 143       "endPosition": "143",
 144       "kind": "IDENTIFIER",
 145       "name": "NaN",
 146       "startPosition": "140"
 147     },
 148     "endPosition": "144",
 149     "kind": "DO_WHILE_LOOP",
 150     "statement": {
 151       "expression": {
 152         "endPosition": "133",
 153         "kind": "FUNCTION_INVOCATION",
 154         "functionSelect": {
 155           "endPosition": "131",
 156           "kind": "IDENTIFIER",
 157           "name": "call",
 158           "startPosition": "127"
 159         },
 160         "arguments": [],
 161         "startPosition": "127"
 162       },
 163       "endPosition": "133",
 164       "kind": "EXPRESSION_STATEMENT",
 165       "startPosition": "127"
 166     },
 167     "startPosition": "124"
 168   }
 169 ]