{
  "type": "Program",
  "sourceType": "module",
  "body": [
    {
      "type": "IfStatement",
      "test": {
        "type": "Identifier",
        "name": "foo"
      },
      "consequent": {
        "type": "BlockStatement",
        "body": [
          {
            "type": "ThrowStatement",
            "argument": {
              "type": "NewExpression",
              "callee": {
                "type": "Identifier",
                "name": "Error"
              },
              "arguments": [
                {
                  "type": "Literal",
                  "value": "Oh no",
                  "raw": "'Oh no'"
                }
              ]
            }
          }
        ]
      },
      "alternate": {
        "type": "ElseIfStatement",
        "test": {
          "type": "Identifier",
          "name": "bar"
        },
        "consequent": {
          "type": "BlockStatement",
          "body": [
            {
              "type": "LogStatement",
              "arguments": [
                {
                  "type": "Literal",
                  "value": "Bar",
                  "raw": "'Bar'"
                }
              ]
            }
          ]
        },
        "alternate": {
          "type": "ElseStatement",
          "consequent": {
            "type": "BlockStatement",
            "body": [
              {
                "type": "LogStatement",
                "arguments": [
                  {
                    "type": "Literal",
                    "value": "Bla",
                    "raw": "'Bla'"
                  }
                ]
              }
            ]
          }
        }
      }
    }
  ]
}
