{
  "type": "File",
  "start": 0,
  "end": 4975,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 191,
      "column": 0
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 4975,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 191,
        "column": 0
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "ImportDeclaration",
        "start": 46,
        "end": 75,
        "loc": {
          "start": {
            "line": 5,
            "column": 0
          },
          "end": {
            "line": 5,
            "column": 29
          }
        },
        "specifiers": [
          {
            "type": "ImportSpecifier",
            "start": 55,
            "end": 59,
            "loc": {
              "start": {
                "line": 5,
                "column": 9
              },
              "end": {
                "line": 5,
                "column": 13
              }
            },
            "imported": {
              "type": "Identifier",
              "start": 55,
              "end": 59,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 9
                },
                "end": {
                  "line": 5,
                  "column": 13
                },
                "identifierName": "loop"
              },
              "name": "loop"
            },
            "local": {
              "type": "Identifier",
              "start": 55,
              "end": 59,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 9
                },
                "end": {
                  "line": 5,
                  "column": 13
                },
                "identifierName": "loop"
              },
              "name": "loop"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 67,
          "end": 75,
          "loc": {
            "start": {
              "line": 5,
              "column": 21
            },
            "end": {
              "line": 5,
              "column": 29
            }
          },
          "extra": {
            "rawValue": "./loop",
            "raw": "'./loop'"
          },
          "value": "./loop",
          "leadingComments": null,
          "trailingComments": null
        },
        "trailingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * This class is responsible for parsing and matching urls\n ",
            "start": 77,
            "end": 143,
            "loc": {
              "start": {
                "line": 7,
                "column": 0
              },
              "end": {
                "line": 9,
                "column": 3
              }
            }
          }
        ]
      },
      {
        "type": "ExportNamedDeclaration",
        "start": 144,
        "end": 4974,
        "loc": {
          "start": {
            "line": 10,
            "column": 0
          },
          "end": {
            "line": 190,
            "column": 1
          }
        },
        "specifiers": [],
        "source": null,
        "declaration": {
          "type": "ClassDeclaration",
          "start": 151,
          "end": 4974,
          "loc": {
            "start": {
              "line": 10,
              "column": 7
            },
            "end": {
              "line": 190,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 157,
            "end": 160,
            "loc": {
              "start": {
                "line": 10,
                "column": 13
              },
              "end": {
                "line": 10,
                "column": 16
              },
              "identifierName": "Url"
            },
            "name": "Url",
            "leadingComments": null
          },
          "superClass": null,
          "body": {
            "type": "ClassBody",
            "start": 161,
            "end": 4974,
            "loc": {
              "start": {
                "line": 10,
                "column": 17
              },
              "end": {
                "line": 190,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ClassMethod",
                "start": 299,
                "end": 1056,
                "loc": {
                  "start": {
                    "line": 15,
                    "column": 2
                  },
                  "end": {
                    "line": 52,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 299,
                  "end": 310,
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 2
                    },
                    "end": {
                      "line": 15,
                      "column": 13
                    },
                    "identifierName": "constructor"
                  },
                  "name": "constructor",
                  "leadingComments": null
                },
                "kind": "constructor",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 313,
                    "end": 316,
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 16
                      },
                      "end": {
                        "line": 15,
                        "column": 19
                      },
                      "identifierName": "url"
                    },
                    "name": "url"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 319,
                  "end": 1056,
                  "loc": {
                    "start": {
                      "line": 15,
                      "column": 22
                    },
                    "end": {
                      "line": 52,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 442,
                      "end": 657,
                      "loc": {
                        "start": {
                          "line": 21,
                          "column": 4
                        },
                        "end": {
                          "line": 27,
                          "column": 5
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 442,
                        "end": 657,
                        "loc": {
                          "start": {
                            "line": 21,
                            "column": 4
                          },
                          "end": {
                            "line": 27,
                            "column": 5
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 442,
                          "end": 455,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 4
                            },
                            "end": {
                              "line": 21,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 442,
                            "end": 446,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 4
                              },
                              "end": {
                                "line": 21,
                                "column": 8
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 447,
                            "end": 455,
                            "loc": {
                              "start": {
                                "line": 21,
                                "column": 9
                              },
                              "end": {
                                "line": 21,
                                "column": 17
                              },
                              "identifierName": "__regexp"
                            },
                            "name": "__regexp"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 458,
                          "end": 657,
                          "loc": {
                            "start": {
                              "line": 21,
                              "column": 20
                            },
                            "end": {
                              "line": 27,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "ObjectProperty",
                              "start": 466,
                              "end": 503,
                              "loc": {
                                "start": {
                                  "line": 22,
                                  "column": 6
                                },
                                "end": {
                                  "line": 22,
                                  "column": 43
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 466,
                                "end": 474,
                                "loc": {
                                  "start": {
                                    "line": 22,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 22,
                                    "column": 14
                                  },
                                  "identifierName": "protocol"
                                },
                                "name": "protocol"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 476,
                                "end": 503,
                                "loc": {
                                  "start": {
                                    "line": 22,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 22,
                                    "column": 43
                                  }
                                },
                                "extra": {
                                  "rawValue": "(?<protocol>[^:]+):\\/\\/",
                                  "raw": "'(?<protocol>[^:]+):\\\\/\\\\/'"
                                },
                                "value": "(?<protocol>[^:]+):\\/\\/"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 511,
                              "end": 539,
                              "loc": {
                                "start": {
                                  "line": 23,
                                  "column": 6
                                },
                                "end": {
                                  "line": 23,
                                  "column": 34
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 511,
                                "end": 515,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 10
                                  },
                                  "identifierName": "host"
                                },
                                "name": "host"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 517,
                                "end": 539,
                                "loc": {
                                  "start": {
                                    "line": 23,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 23,
                                    "column": 34
                                  }
                                },
                                "extra": {
                                  "rawValue": "(?<host>[^\\/\\?#]+)",
                                  "raw": "'(?<host>[^\\\\/\\\\?#]+)'"
                                },
                                "value": "(?<host>[^\\/\\?#]+)"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 547,
                              "end": 576,
                              "loc": {
                                "start": {
                                  "line": 24,
                                  "column": 6
                                },
                                "end": {
                                  "line": 24,
                                  "column": 35
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 547,
                                "end": 551,
                                "loc": {
                                  "start": {
                                    "line": 24,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 10
                                  },
                                  "identifierName": "path"
                                },
                                "name": "path"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 553,
                                "end": 576,
                                "loc": {
                                  "start": {
                                    "line": 24,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 24,
                                    "column": 35
                                  }
                                },
                                "extra": {
                                  "rawValue": "(?<path>\\/[^\\?#]*)?",
                                  "raw": "'(?<path>\\\\/[^\\\\?#]*)?'"
                                },
                                "value": "(?<path>\\/[^\\?#]*)?"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 584,
                              "end": 622,
                              "loc": {
                                "start": {
                                  "line": 25,
                                  "column": 6
                                },
                                "end": {
                                  "line": 25,
                                  "column": 44
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 584,
                                "end": 594,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 16
                                  },
                                  "identifierName": "parameters"
                                },
                                "name": "parameters"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 596,
                                "end": 622,
                                "loc": {
                                  "start": {
                                    "line": 25,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 25,
                                    "column": 44
                                  }
                                },
                                "extra": {
                                  "rawValue": "(?<parameters>\\?[^#]*)?",
                                  "raw": "'(?<parameters>\\\\?[^#]*)?'"
                                },
                                "value": "(?<parameters>\\?[^#]*)?"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 630,
                              "end": 651,
                              "loc": {
                                "start": {
                                  "line": 26,
                                  "column": 6
                                },
                                "end": {
                                  "line": 26,
                                  "column": 27
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 630,
                                "end": 634,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 10
                                  },
                                  "identifierName": "hash"
                                },
                                "name": "hash"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 636,
                                "end": 651,
                                "loc": {
                                  "start": {
                                    "line": 26,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 26,
                                    "column": 27
                                  }
                                },
                                "extra": {
                                  "rawValue": "(?<hash>#.*)?",
                                  "raw": "'(?<hash>#.*)?'"
                                },
                                "value": "(?<hash>#.*)?"
                              },
                              "trailingComments": [
                                {
                                  "type": "CommentBlock",
                                  "value": "*\n     * Contains the url provided\n     * @type {String}\n     * @private\n     ",
                                  "start": 663,
                                  "end": 745,
                                  "loc": {
                                    "start": {
                                      "line": 29,
                                      "column": 4
                                    },
                                    "end": {
                                      "line": 33,
                                      "column": 7
                                    }
                                  }
                                }
                              ]
                            }
                          ],
                          "trailingComments": null
                        },
                        "leadingComments": null,
                        "trailingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\n     * Contains regular expressions used for splitting the url\n     * @type {Object}\n     * @private\n     ",
                          "start": 325,
                          "end": 437,
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 4
                            },
                            "end": {
                              "line": 20,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\n     * Contains the url provided\n     * @type {String}\n     * @private\n     ",
                          "start": 663,
                          "end": 745,
                          "loc": {
                            "start": {
                              "line": 29,
                              "column": 4
                            },
                            "end": {
                              "line": 33,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 750,
                      "end": 765,
                      "loc": {
                        "start": {
                          "line": 34,
                          "column": 4
                        },
                        "end": {
                          "line": 34,
                          "column": 19
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 750,
                        "end": 765,
                        "loc": {
                          "start": {
                            "line": 34,
                            "column": 4
                          },
                          "end": {
                            "line": 34,
                            "column": 19
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 750,
                          "end": 760,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 4
                            },
                            "end": {
                              "line": 34,
                              "column": 14
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 750,
                            "end": 754,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 4
                              },
                              "end": {
                                "line": 34,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 755,
                            "end": 760,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 9
                              },
                              "end": {
                                "line": 34,
                                "column": 14
                              },
                              "identifierName": "__url"
                            },
                            "name": "__url"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 763,
                          "end": 765,
                          "loc": {
                            "start": {
                              "line": 34,
                              "column": 17
                            },
                            "end": {
                              "line": 34,
                              "column": 19
                            }
                          },
                          "extra": {
                            "rawValue": "",
                            "raw": "''"
                          },
                          "value": "",
                          "leadingComments": null,
                          "trailingComments": null
                        },
                        "trailingComments": null
                      },
                      "trailingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\n     * Contains all the parts of the url\n     * @type {Object}\n     * @private\n     ",
                          "start": 771,
                          "end": 861,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 4
                            },
                            "end": {
                              "line": 40,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 866,
                      "end": 1031,
                      "loc": {
                        "start": {
                          "line": 41,
                          "column": 4
                        },
                        "end": {
                          "line": 49,
                          "column": 5
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 866,
                        "end": 1031,
                        "loc": {
                          "start": {
                            "line": 41,
                            "column": 4
                          },
                          "end": {
                            "line": 49,
                            "column": 5
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 866,
                          "end": 878,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 4
                            },
                            "end": {
                              "line": 41,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 866,
                            "end": 870,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 4
                              },
                              "end": {
                                "line": 41,
                                "column": 8
                              }
                            },
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 871,
                            "end": 878,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 9
                              },
                              "end": {
                                "line": 41,
                                "column": 16
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "right": {
                          "type": "ObjectExpression",
                          "start": 881,
                          "end": 1031,
                          "loc": {
                            "start": {
                              "line": 41,
                              "column": 19
                            },
                            "end": {
                              "line": 49,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "ObjectProperty",
                              "start": 889,
                              "end": 903,
                              "loc": {
                                "start": {
                                  "line": 42,
                                  "column": 6
                                },
                                "end": {
                                  "line": 42,
                                  "column": 20
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 889,
                                "end": 897,
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 14
                                  },
                                  "identifierName": "protocol"
                                },
                                "name": "protocol"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 899,
                                "end": 903,
                                "loc": {
                                  "start": {
                                    "line": 42,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 42,
                                    "column": 20
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 911,
                              "end": 921,
                              "loc": {
                                "start": {
                                  "line": 43,
                                  "column": 6
                                },
                                "end": {
                                  "line": 43,
                                  "column": 16
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 911,
                                "end": 915,
                                "loc": {
                                  "start": {
                                    "line": 43,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 43,
                                    "column": 10
                                  },
                                  "identifierName": "host"
                                },
                                "name": "host"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 917,
                                "end": 921,
                                "loc": {
                                  "start": {
                                    "line": 43,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 43,
                                    "column": 16
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 929,
                              "end": 939,
                              "loc": {
                                "start": {
                                  "line": 44,
                                  "column": 6
                                },
                                "end": {
                                  "line": 44,
                                  "column": 16
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 929,
                                "end": 933,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 10
                                  },
                                  "identifierName": "path"
                                },
                                "name": "path"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 935,
                                "end": 939,
                                "loc": {
                                  "start": {
                                    "line": 44,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 44,
                                    "column": 16
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 947,
                              "end": 963,
                              "loc": {
                                "start": {
                                  "line": 45,
                                  "column": 6
                                },
                                "end": {
                                  "line": 45,
                                  "column": 22
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 947,
                                "end": 957,
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 16
                                  },
                                  "identifierName": "parameters"
                                },
                                "name": "parameters"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 959,
                                "end": 963,
                                "loc": {
                                  "start": {
                                    "line": 45,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 45,
                                    "column": 22
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 971,
                              "end": 981,
                              "loc": {
                                "start": {
                                  "line": 46,
                                  "column": 6
                                },
                                "end": {
                                  "line": 46,
                                  "column": 16
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 971,
                                "end": 975,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 10
                                  },
                                  "identifierName": "hash"
                                },
                                "name": "hash"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 977,
                                "end": 981,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 16
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 989,
                              "end": 1003,
                              "loc": {
                                "start": {
                                  "line": 47,
                                  "column": 6
                                },
                                "end": {
                                  "line": 47,
                                  "column": 20
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 989,
                                "end": 997,
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 14
                                  },
                                  "identifierName": "username"
                                },
                                "name": "username"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 999,
                                "end": 1003,
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 20
                                  }
                                }
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 1011,
                              "end": 1025,
                              "loc": {
                                "start": {
                                  "line": 48,
                                  "column": 6
                                },
                                "end": {
                                  "line": 48,
                                  "column": 20
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 1011,
                                "end": 1019,
                                "loc": {
                                  "start": {
                                    "line": 48,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 48,
                                    "column": 14
                                  },
                                  "identifierName": "password"
                                },
                                "name": "password"
                              },
                              "value": {
                                "type": "NullLiteral",
                                "start": 1021,
                                "end": 1025,
                                "loc": {
                                  "start": {
                                    "line": 48,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 48,
                                    "column": 20
                                  }
                                }
                              }
                            }
                          ]
                        },
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentBlock",
                          "value": "*\n     * Contains all the parts of the url\n     * @type {Object}\n     * @private\n     ",
                          "start": 771,
                          "end": 861,
                          "loc": {
                            "start": {
                              "line": 36,
                              "column": 4
                            },
                            "end": {
                              "line": 40,
                              "column": 7
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1037,
                      "end": 1052,
                      "loc": {
                        "start": {
                          "line": 51,
                          "column": 4
                        },
                        "end": {
                          "line": 51,
                          "column": 19
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 1037,
                        "end": 1052,
                        "loc": {
                          "start": {
                            "line": 51,
                            "column": 4
                          },
                          "end": {
                            "line": 51,
                            "column": 19
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 1037,
                          "end": 1045,
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 4
                            },
                            "end": {
                              "line": 51,
                              "column": 12
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 1037,
                            "end": 1041,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 4
                              },
                              "end": {
                                "line": 51,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1042,
                            "end": 1045,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 9
                              },
                              "end": {
                                "line": 51,
                                "column": 12
                              },
                              "identifierName": "set"
                            },
                            "name": "set"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 1047,
                            "end": 1050,
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 14
                              },
                              "end": {
                                "line": 51,
                                "column": 17
                              },
                              "identifierName": "url"
                            },
                            "name": "url"
                          }
                        ]
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Creates an instance of Url\n   * @param {String} url A url string. If no url is provided window.location.href is used\n   ",
                    "start": 165,
                    "end": 296,
                    "loc": {
                      "start": {
                        "line": 11,
                        "column": 2
                      },
                      "end": {
                        "line": 14,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Parse a url to the correct format\n   * @param {String} url The url string to be parsed\n   * @return {String} The parsed version of the url\n   * @private\n   ",
                    "start": 1060,
                    "end": 1227,
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 2
                      },
                      "end": {
                        "line": 59,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 1230,
                "end": 1436,
                "loc": {
                  "start": {
                    "line": 60,
                    "column": 2
                  },
                  "end": {
                    "line": 65,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 1230,
                  "end": 1240,
                  "loc": {
                    "start": {
                      "line": 60,
                      "column": 2
                    },
                    "end": {
                      "line": 60,
                      "column": 12
                    },
                    "identifierName": "__parseUrl"
                  },
                  "name": "__parseUrl",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 1243,
                    "end": 1246,
                    "loc": {
                      "start": {
                        "line": 60,
                        "column": 15
                      },
                      "end": {
                        "line": 60,
                        "column": 18
                      },
                      "identifierName": "url"
                    },
                    "name": "url"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 1249,
                  "end": 1436,
                  "loc": {
                    "start": {
                      "line": 60,
                      "column": 21
                    },
                    "end": {
                      "line": 65,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 1255,
                      "end": 1296,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 4
                        },
                        "end": {
                          "line": 61,
                          "column": 45
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1259,
                          "end": 1296,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 8
                            },
                            "end": {
                              "line": 61,
                              "column": 45
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1259,
                            "end": 1262,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 8
                              },
                              "end": {
                                "line": 61,
                                "column": 11
                              },
                              "identifierName": "div"
                            },
                            "name": "div"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 1265,
                            "end": 1296,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 14
                              },
                              "end": {
                                "line": 61,
                                "column": 45
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1265,
                              "end": 1287,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 14
                                },
                                "end": {
                                  "line": 61,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 1265,
                                "end": 1273,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 22
                                  },
                                  "identifierName": "document"
                                },
                                "name": "document"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1274,
                                "end": 1287,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 36
                                  },
                                  "identifierName": "createElement"
                                },
                                "name": "createElement"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "StringLiteral",
                                "start": 1289,
                                "end": 1294,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 43
                                  }
                                },
                                "extra": {
                                  "rawValue": "div",
                                  "raw": "'div'"
                                },
                                "value": "div"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1301,
                      "end": 1326,
                      "loc": {
                        "start": {
                          "line": 62,
                          "column": 4
                        },
                        "end": {
                          "line": 62,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1301,
                        "end": 1326,
                        "loc": {
                          "start": {
                            "line": 62,
                            "column": 4
                          },
                          "end": {
                            "line": 62,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1301,
                          "end": 1314,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 4
                            },
                            "end": {
                              "line": 62,
                              "column": 17
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1301,
                            "end": 1304,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 4
                              },
                              "end": {
                                "line": 62,
                                "column": 7
                              },
                              "identifierName": "div"
                            },
                            "name": "div"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1305,
                            "end": 1314,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 8
                              },
                              "end": {
                                "line": 62,
                                "column": 17
                              },
                              "identifierName": "innerHTML"
                            },
                            "name": "innerHTML"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "StringLiteral",
                          "start": 1317,
                          "end": 1326,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 20
                            },
                            "end": {
                              "line": 62,
                              "column": 29
                            }
                          },
                          "extra": {
                            "rawValue": "<a></a>",
                            "raw": "'<a></a>'"
                          },
                          "value": "<a></a>"
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 1331,
                      "end": 1356,
                      "loc": {
                        "start": {
                          "line": 63,
                          "column": 4
                        },
                        "end": {
                          "line": 63,
                          "column": 29
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 1331,
                        "end": 1356,
                        "loc": {
                          "start": {
                            "line": 63,
                            "column": 4
                          },
                          "end": {
                            "line": 63,
                            "column": 29
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 1331,
                          "end": 1350,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 4
                            },
                            "end": {
                              "line": 63,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 1331,
                            "end": 1345,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 4
                              },
                              "end": {
                                "line": 63,
                                "column": 18
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 1331,
                              "end": 1334,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 4
                                },
                                "end": {
                                  "line": 63,
                                  "column": 7
                                },
                                "identifierName": "div"
                              },
                              "name": "div"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 1335,
                              "end": 1345,
                              "loc": {
                                "start": {
                                  "line": 63,
                                  "column": 8
                                },
                                "end": {
                                  "line": 63,
                                  "column": 18
                                },
                                "identifierName": "firstChild"
                              },
                              "name": "firstChild"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1346,
                            "end": 1350,
                            "loc": {
                              "start": {
                                "line": 63,
                                "column": 19
                              },
                              "end": {
                                "line": 63,
                                "column": 23
                              },
                              "identifierName": "href"
                            },
                            "name": "href"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 1353,
                          "end": 1356,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 26
                            },
                            "end": {
                              "line": 63,
                              "column": 29
                            },
                            "identifierName": "url"
                          },
                          "name": "url",
                          "leadingComments": null,
                          "trailingComments": null
                        },
                        "trailingComments": null
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Ensures that the href is properly escaped",
                          "start": 1357,
                          "end": 1401,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 30
                            },
                            "end": {
                              "line": 63,
                              "column": 74
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 1406,
                      "end": 1432,
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 4
                        },
                        "end": {
                          "line": 64,
                          "column": 30
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 1413,
                        "end": 1432,
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 11
                          },
                          "end": {
                            "line": 64,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 1413,
                          "end": 1427,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 11
                            },
                            "end": {
                              "line": 64,
                              "column": 25
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 1413,
                            "end": 1416,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 11
                              },
                              "end": {
                                "line": 64,
                                "column": 14
                              },
                              "identifierName": "div"
                            },
                            "name": "div",
                            "leadingComments": null
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 1417,
                            "end": 1427,
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 15
                              },
                              "end": {
                                "line": 64,
                                "column": 25
                              },
                              "identifierName": "firstChild"
                            },
                            "name": "firstChild"
                          },
                          "computed": false,
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 1428,
                          "end": 1432,
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 26
                            },
                            "end": {
                              "line": 64,
                              "column": 30
                            },
                            "identifierName": "href"
                          },
                          "name": "href"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " Ensures that the href is properly escaped",
                          "start": 1357,
                          "end": 1401,
                          "loc": {
                            "start": {
                              "line": 63,
                              "column": 30
                            },
                            "end": {
                              "line": 63,
                              "column": 74
                            }
                          }
                        }
                      ]
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Parse a url to the correct format\n   * @param {String} url The url string to be parsed\n   * @return {String} The parsed version of the url\n   * @private\n   ",
                    "start": 1060,
                    "end": 1227,
                    "loc": {
                      "start": {
                        "line": 54,
                        "column": 2
                      },
                      "end": {
                        "line": 59,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Split the url into parts based on the url regular expression\n   * @private\n   ",
                    "start": 1440,
                    "end": 1529,
                    "loc": {
                      "start": {
                        "line": 67,
                        "column": 2
                      },
                      "end": {
                        "line": 70,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 1532,
                "end": 3346,
                "loc": {
                  "start": {
                    "line": 71,
                    "column": 2
                  },
                  "end": {
                    "line": 113,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 1532,
                  "end": 1539,
                  "loc": {
                    "start": {
                      "line": 71,
                      "column": 2
                    },
                    "end": {
                      "line": 71,
                      "column": 9
                    },
                    "identifierName": "__split"
                  },
                  "name": "__split",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 1543,
                  "end": 3346,
                  "loc": {
                    "start": {
                      "line": 71,
                      "column": 13
                    },
                    "end": {
                      "line": 113,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 1549,
                      "end": 1705,
                      "loc": {
                        "start": {
                          "line": 72,
                          "column": 4
                        },
                        "end": {
                          "line": 72,
                          "column": 160
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1553,
                          "end": 1705,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 8
                            },
                            "end": {
                              "line": 72,
                              "column": 160
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1553,
                            "end": 1559,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 8
                              },
                              "end": {
                                "line": 72,
                                "column": 14
                              },
                              "identifierName": "regexp"
                            },
                            "name": "regexp"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 1562,
                            "end": 1705,
                            "loc": {
                              "start": {
                                "line": 72,
                                "column": 17
                              },
                              "end": {
                                "line": 72,
                                "column": 160
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 1566,
                              "end": 1572,
                              "loc": {
                                "start": {
                                  "line": 72,
                                  "column": 21
                                },
                                "end": {
                                  "line": 72,
                                  "column": 27
                                },
                                "identifierName": "RegExp"
                              },
                              "name": "RegExp"
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "start": 1574,
                                "end": 1698,
                                "loc": {
                                  "start": {
                                    "line": 72,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 153
                                  }
                                },
                                "left": {
                                  "type": "BinaryExpression",
                                  "start": 1574,
                                  "end": 1692,
                                  "loc": {
                                    "start": {
                                      "line": 72,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 72,
                                      "column": 147
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 1574,
                                    "end": 1671,
                                    "loc": {
                                      "start": {
                                        "line": 72,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 72,
                                        "column": 126
                                      }
                                    },
                                    "left": {
                                      "type": "BinaryExpression",
                                      "start": 1574,
                                      "end": 1644,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 99
                                        }
                                      },
                                      "left": {
                                        "type": "BinaryExpression",
                                        "start": 1574,
                                        "end": 1623,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 78
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 1574,
                                          "end": 1602,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 57
                                            }
                                          },
                                          "left": {
                                            "type": "StringLiteral",
                                            "start": 1574,
                                            "end": 1577,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 32
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "^",
                                              "raw": "'^'"
                                            },
                                            "value": "^"
                                          },
                                          "operator": "+",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 1580,
                                            "end": 1602,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 57
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1580,
                                              "end": 1593,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 48
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 1580,
                                                "end": 1584,
                                                "loc": {
                                                  "start": {
                                                    "line": 72,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 72,
                                                    "column": 39
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1585,
                                                "end": 1593,
                                                "loc": {
                                                  "start": {
                                                    "line": 72,
                                                    "column": 40
                                                  },
                                                  "end": {
                                                    "line": 72,
                                                    "column": 48
                                                  },
                                                  "identifierName": "__regexp"
                                                },
                                                "name": "__regexp"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1594,
                                              "end": 1602,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 49
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 57
                                                },
                                                "identifierName": "protocol"
                                              },
                                              "name": "protocol"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "operator": "+",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 1605,
                                          "end": 1623,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 60
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 78
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1605,
                                            "end": 1618,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 73
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 1605,
                                              "end": 1609,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 64
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1610,
                                              "end": 1618,
                                              "loc": {
                                                "start": {
                                                  "line": 72,
                                                  "column": 65
                                                },
                                                "end": {
                                                  "line": 72,
                                                  "column": 73
                                                },
                                                "identifierName": "__regexp"
                                              },
                                              "name": "__regexp"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1619,
                                            "end": 1623,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 74
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 78
                                              },
                                              "identifierName": "host"
                                            },
                                            "name": "host"
                                          },
                                          "computed": false
                                        }
                                      },
                                      "operator": "+",
                                      "right": {
                                        "type": "MemberExpression",
                                        "start": 1626,
                                        "end": 1644,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 81
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 99
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1626,
                                          "end": 1639,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 81
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 94
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 1626,
                                            "end": 1630,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 81
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 85
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1631,
                                            "end": 1639,
                                            "loc": {
                                              "start": {
                                                "line": 72,
                                                "column": 86
                                              },
                                              "end": {
                                                "line": 72,
                                                "column": 94
                                              },
                                              "identifierName": "__regexp"
                                            },
                                            "name": "__regexp"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1640,
                                          "end": 1644,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 95
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 99
                                            },
                                            "identifierName": "path"
                                          },
                                          "name": "path"
                                        },
                                        "computed": false
                                      }
                                    },
                                    "operator": "+",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 1647,
                                      "end": 1671,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 126
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1647,
                                        "end": 1660,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 102
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 115
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 1647,
                                          "end": 1651,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 102
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 106
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1652,
                                          "end": 1660,
                                          "loc": {
                                            "start": {
                                              "line": 72,
                                              "column": 107
                                            },
                                            "end": {
                                              "line": 72,
                                              "column": 115
                                            },
                                            "identifierName": "__regexp"
                                          },
                                          "name": "__regexp"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1661,
                                        "end": 1671,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 116
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 126
                                          },
                                          "identifierName": "parameters"
                                        },
                                        "name": "parameters"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "operator": "+",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 1674,
                                    "end": 1692,
                                    "loc": {
                                      "start": {
                                        "line": 72,
                                        "column": 129
                                      },
                                      "end": {
                                        "line": 72,
                                        "column": 147
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1674,
                                      "end": 1687,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 129
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 142
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 1674,
                                        "end": 1678,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 129
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 133
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1679,
                                        "end": 1687,
                                        "loc": {
                                          "start": {
                                            "line": 72,
                                            "column": 134
                                          },
                                          "end": {
                                            "line": 72,
                                            "column": 142
                                          },
                                          "identifierName": "__regexp"
                                        },
                                        "name": "__regexp"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1688,
                                      "end": 1692,
                                      "loc": {
                                        "start": {
                                          "line": 72,
                                          "column": 143
                                        },
                                        "end": {
                                          "line": 72,
                                          "column": 147
                                        },
                                        "identifierName": "hash"
                                      },
                                      "name": "hash"
                                    },
                                    "computed": false
                                  }
                                },
                                "operator": "+",
                                "right": {
                                  "type": "StringLiteral",
                                  "start": 1695,
                                  "end": 1698,
                                  "loc": {
                                    "start": {
                                      "line": 72,
                                      "column": 150
                                    },
                                    "end": {
                                      "line": 72,
                                      "column": 153
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "$",
                                    "raw": "'$'"
                                  },
                                  "value": "$"
                                }
                              },
                              {
                                "type": "StringLiteral",
                                "start": 1700,
                                "end": 1703,
                                "loc": {
                                  "start": {
                                    "line": 72,
                                    "column": 155
                                  },
                                  "end": {
                                    "line": 72,
                                    "column": 158
                                  }
                                },
                                "extra": {
                                  "rawValue": "i",
                                  "raw": "'i'"
                                },
                                "value": "i"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 1710,
                      "end": 1748,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 4
                        },
                        "end": {
                          "line": 73,
                          "column": 42
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 1714,
                          "end": 1748,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 8
                            },
                            "end": {
                              "line": 73,
                              "column": 42
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 1714,
                            "end": 1719,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 8
                              },
                              "end": {
                                "line": 73,
                                "column": 13
                              },
                              "identifierName": "parts"
                            },
                            "name": "parts"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 1722,
                            "end": 1748,
                            "loc": {
                              "start": {
                                "line": 73,
                                "column": 16
                              },
                              "end": {
                                "line": 73,
                                "column": 42
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 1722,
                              "end": 1738,
                              "loc": {
                                "start": {
                                  "line": 73,
                                  "column": 16
                                },
                                "end": {
                                  "line": 73,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 1722,
                                "end": 1732,
                                "loc": {
                                  "start": {
                                    "line": 73,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 73,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 1722,
                                  "end": 1726,
                                  "loc": {
                                    "start": {
                                      "line": 73,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1727,
                                  "end": 1732,
                                  "loc": {
                                    "start": {
                                      "line": 73,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 73,
                                      "column": 26
                                    },
                                    "identifierName": "__url"
                                  },
                                  "name": "__url"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 1733,
                                "end": 1738,
                                "loc": {
                                  "start": {
                                    "line": 73,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 73,
                                    "column": 32
                                  },
                                  "identifierName": "match"
                                },
                                "name": "match"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 1740,
                                "end": 1746,
                                "loc": {
                                  "start": {
                                    "line": 73,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 73,
                                    "column": 40
                                  },
                                  "identifierName": "regexp"
                                },
                                "name": "regexp"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "IfStatement",
                      "start": 1753,
                      "end": 3342,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 4
                        },
                        "end": {
                          "line": 112,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "Identifier",
                        "start": 1758,
                        "end": 1763,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 9
                          },
                          "end": {
                            "line": 74,
                            "column": 14
                          },
                          "identifierName": "parts"
                        },
                        "name": "parts"
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 1766,
                        "end": 3342,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 17
                          },
                          "end": {
                            "line": 112,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "start": 1774,
                            "end": 1832,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 6
                              },
                              "end": {
                                "line": 75,
                                "column": 64
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1774,
                              "end": 1832,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 6
                                },
                                "end": {
                                  "line": 75,
                                  "column": 64
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1774,
                                "end": 1795,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 27
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1774,
                                  "end": 1786,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 18
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1774,
                                    "end": 1778,
                                    "loc": {
                                      "start": {
                                        "line": 75,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 75,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1779,
                                    "end": 1786,
                                    "loc": {
                                      "start": {
                                        "line": 75,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 75,
                                        "column": 18
                                      },
                                      "identifierName": "__parts"
                                    },
                                    "name": "__parts"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1787,
                                  "end": 1795,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 27
                                    },
                                    "identifierName": "protocol"
                                  },
                                  "name": "protocol"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "LogicalExpression",
                                "start": 1798,
                                "end": 1832,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 64
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 1798,
                                  "end": 1824,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 30
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 56
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1798,
                                    "end": 1810,
                                    "loc": {
                                      "start": {
                                        "line": 75,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 75,
                                        "column": 42
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1798,
                                      "end": 1803,
                                      "loc": {
                                        "start": {
                                          "line": 75,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 75,
                                          "column": 35
                                        },
                                        "identifierName": "parts"
                                      },
                                      "name": "parts"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1804,
                                      "end": 1810,
                                      "loc": {
                                        "start": {
                                          "line": 75,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 75,
                                          "column": 42
                                        },
                                        "identifierName": "groups"
                                      },
                                      "name": "groups"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "StringLiteral",
                                    "start": 1812,
                                    "end": 1822,
                                    "loc": {
                                      "start": {
                                        "line": 75,
                                        "column": 44
                                      },
                                      "end": {
                                        "line": 75,
                                        "column": 54
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "protocol",
                                      "raw": "'protocol'"
                                    },
                                    "value": "protocol"
                                  },
                                  "computed": true
                                },
                                "operator": "||",
                                "right": {
                                  "type": "NullLiteral",
                                  "start": 1828,
                                  "end": 1832,
                                  "loc": {
                                    "start": {
                                      "line": 75,
                                      "column": 60
                                    },
                                    "end": {
                                      "line": 75,
                                      "column": 64
                                    }
                                  }
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1839,
                            "end": 1889,
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 6
                              },
                              "end": {
                                "line": 76,
                                "column": 56
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1839,
                              "end": 1889,
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 6
                                },
                                "end": {
                                  "line": 76,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1839,
                                "end": 1856,
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 76,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1839,
                                  "end": 1851,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 18
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1839,
                                    "end": 1843,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1844,
                                    "end": 1851,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 18
                                      },
                                      "identifierName": "__parts"
                                    },
                                    "name": "__parts"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1852,
                                  "end": 1856,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 23
                                    },
                                    "identifierName": "path"
                                  },
                                  "name": "path"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "LogicalExpression",
                                "start": 1859,
                                "end": 1889,
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 76,
                                    "column": 56
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 1859,
                                  "end": 1881,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1859,
                                    "end": 1871,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1859,
                                      "end": 1864,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 31
                                        },
                                        "identifierName": "parts"
                                      },
                                      "name": "parts"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1865,
                                      "end": 1871,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 38
                                        },
                                        "identifierName": "groups"
                                      },
                                      "name": "groups"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "StringLiteral",
                                    "start": 1873,
                                    "end": 1879,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 46
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "path",
                                      "raw": "'path'"
                                    },
                                    "value": "path"
                                  },
                                  "computed": true
                                },
                                "operator": "||",
                                "right": {
                                  "type": "NullLiteral",
                                  "start": 1885,
                                  "end": 1889,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 56
                                    }
                                  }
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1896,
                            "end": 1989,
                            "loc": {
                              "start": {
                                "line": 77,
                                "column": 6
                              },
                              "end": {
                                "line": 77,
                                "column": 99
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1896,
                              "end": 1989,
                              "loc": {
                                "start": {
                                  "line": 77,
                                  "column": 6
                                },
                                "end": {
                                  "line": 77,
                                  "column": 99
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1896,
                                "end": 1913,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1896,
                                  "end": 1908,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 18
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1896,
                                    "end": 1900,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1901,
                                    "end": 1908,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 18
                                      },
                                      "identifierName": "__parts"
                                    },
                                    "name": "__parts"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1909,
                                  "end": 1913,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 23
                                    },
                                    "identifierName": "hash"
                                  },
                                  "name": "hash"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "ConditionalExpression",
                                "start": 1916,
                                "end": 1989,
                                "loc": {
                                  "start": {
                                    "line": 77,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 77,
                                    "column": 99
                                  }
                                },
                                "test": {
                                  "type": "MemberExpression",
                                  "start": 1918,
                                  "end": 1940,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 28
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 50
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1918,
                                    "end": 1930,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 40
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 1918,
                                      "end": 1923,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 33
                                        },
                                        "identifierName": "parts"
                                      },
                                      "name": "parts"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1924,
                                      "end": 1930,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 40
                                        },
                                        "identifierName": "groups"
                                      },
                                      "name": "groups"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "StringLiteral",
                                    "start": 1932,
                                    "end": 1938,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 48
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "hash",
                                      "raw": "'hash'"
                                    },
                                    "value": "hash"
                                  },
                                  "computed": true,
                                  "extra": {
                                    "parenthesized": true,
                                    "parenStart": 1916
                                  }
                                },
                                "consequent": {
                                  "type": "CallExpression",
                                  "start": 1945,
                                  "end": 1982,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 92
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 1945,
                                    "end": 1977,
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 55
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 87
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 1945,
                                      "end": 1967,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 77
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1945,
                                        "end": 1957,
                                        "loc": {
                                          "start": {
                                            "line": 77,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 77,
                                            "column": 67
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 1945,
                                          "end": 1950,
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 60
                                            },
                                            "identifierName": "parts"
                                          },
                                          "name": "parts"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1951,
                                          "end": 1957,
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 61
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 67
                                            },
                                            "identifierName": "groups"
                                          },
                                          "name": "groups"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "StringLiteral",
                                        "start": 1959,
                                        "end": 1965,
                                        "loc": {
                                          "start": {
                                            "line": 77,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 77,
                                            "column": 75
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "hash",
                                          "raw": "'hash'"
                                        },
                                        "value": "hash"
                                      },
                                      "computed": true
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1968,
                                      "end": 1977,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 78
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 87
                                        },
                                        "identifierName": "substring"
                                      },
                                      "name": "substring"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "NumericLiteral",
                                      "start": 1979,
                                      "end": 1980,
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 89
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 90
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "value": 1
                                    }
                                  ]
                                },
                                "alternate": {
                                  "type": "NullLiteral",
                                  "start": 1985,
                                  "end": 1989,
                                  "loc": {
                                    "start": {
                                      "line": 77,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 77,
                                      "column": 99
                                    }
                                  }
                                }
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1997,
                            "end": 2047,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 6
                              },
                              "end": {
                                "line": 79,
                                "column": 56
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 1997,
                              "end": 2047,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 6
                                },
                                "end": {
                                  "line": 79,
                                  "column": 56
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 1997,
                                "end": 2014,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1997,
                                  "end": 2009,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 18
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 1997,
                                    "end": 2001,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2002,
                                    "end": 2009,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 18
                                      },
                                      "identifierName": "__parts"
                                    },
                                    "name": "__parts"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2010,
                                  "end": 2014,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 23
                                    },
                                    "identifierName": "host"
                                  },
                                  "name": "host"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "LogicalExpression",
                                "start": 2017,
                                "end": 2047,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 56
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 2017,
                                  "end": 2039,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2017,
                                    "end": 2029,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 38
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2017,
                                      "end": 2022,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 31
                                        },
                                        "identifierName": "parts"
                                      },
                                      "name": "parts"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2023,
                                      "end": 2029,
                                      "loc": {
                                        "start": {
                                          "line": 79,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 79,
                                          "column": 38
                                        },
                                        "identifierName": "groups"
                                      },
                                      "name": "groups"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "StringLiteral",
                                    "start": 2031,
                                    "end": 2037,
                                    "loc": {
                                      "start": {
                                        "line": 79,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 79,
                                        "column": 46
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "host",
                                      "raw": "'host'"
                                    },
                                    "value": "host"
                                  },
                                  "computed": true
                                },
                                "operator": "||",
                                "right": {
                                  "type": "NullLiteral",
                                  "start": 2043,
                                  "end": 2047,
                                  "loc": {
                                    "start": {
                                      "line": 79,
                                      "column": 52
                                    },
                                    "end": {
                                      "line": 79,
                                      "column": 56
                                    }
                                  },
                                  "leadingComments": null,
                                  "trailingComments": null
                                },
                                "trailingComments": null
                              },
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " Split host, username and password if needed",
                                "start": 2054,
                                "end": 2100,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 52
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 2107,
                            "end": 2751,
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 6
                              },
                              "end": {
                                "line": 95,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 2112,
                              "end": 2129,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 11
                                },
                                "end": {
                                  "line": 81,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2112,
                                "end": 2124,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2112,
                                  "end": 2116,
                                  "loc": {
                                    "start": {
                                      "line": 81,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 15
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2117,
                                  "end": 2124,
                                  "loc": {
                                    "start": {
                                      "line": 81,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 81,
                                      "column": 23
                                    },
                                    "identifierName": "__parts"
                                  },
                                  "name": "__parts"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2125,
                                "end": 2129,
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 28
                                  },
                                  "identifierName": "host"
                                },
                                "name": "host"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 2132,
                              "end": 2751,
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 31
                                },
                                "end": {
                                  "line": 95,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2142,
                                  "end": 2188,
                                  "loc": {
                                    "start": {
                                      "line": 82,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 82,
                                      "column": 54
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2146,
                                      "end": 2188,
                                      "loc": {
                                        "start": {
                                          "line": 82,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 82,
                                          "column": 54
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2146,
                                        "end": 2155,
                                        "loc": {
                                          "start": {
                                            "line": 82,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 82,
                                            "column": 21
                                          },
                                          "identifierName": "hostParts"
                                        },
                                        "name": "hostParts"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 2158,
                                        "end": 2188,
                                        "loc": {
                                          "start": {
                                            "line": 82,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 82,
                                            "column": 54
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2158,
                                          "end": 2181,
                                          "loc": {
                                            "start": {
                                              "line": 82,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 82,
                                              "column": 47
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 2158,
                                            "end": 2175,
                                            "loc": {
                                              "start": {
                                                "line": 82,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 82,
                                                "column": 41
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2158,
                                              "end": 2170,
                                              "loc": {
                                                "start": {
                                                  "line": 82,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 82,
                                                  "column": 36
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2158,
                                                "end": 2162,
                                                "loc": {
                                                  "start": {
                                                    "line": 82,
                                                    "column": 24
                                                  },
                                                  "end": {
                                                    "line": 82,
                                                    "column": 28
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2163,
                                                "end": 2170,
                                                "loc": {
                                                  "start": {
                                                    "line": 82,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 82,
                                                    "column": 36
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2171,
                                              "end": 2175,
                                              "loc": {
                                                "start": {
                                                  "line": 82,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 82,
                                                  "column": 41
                                                },
                                                "identifierName": "host"
                                              },
                                              "name": "host"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2176,
                                            "end": 2181,
                                            "loc": {
                                              "start": {
                                                "line": 82,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 82,
                                                "column": 47
                                              },
                                              "identifierName": "split"
                                            },
                                            "name": "split"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "StringLiteral",
                                            "start": 2183,
                                            "end": 2186,
                                            "loc": {
                                              "start": {
                                                "line": 82,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 82,
                                                "column": 52
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "@",
                                              "raw": "'@'"
                                            },
                                            "value": "@"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "IfStatement",
                                  "start": 2197,
                                  "end": 2743,
                                  "loc": {
                                    "start": {
                                      "line": 83,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 94,
                                      "column": 9
                                    }
                                  },
                                  "test": {
                                    "type": "MemberExpression",
                                    "start": 2202,
                                    "end": 2216,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 83,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2202,
                                      "end": 2211,
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 83,
                                          "column": 22
                                        },
                                        "identifierName": "hostParts"
                                      },
                                      "name": "hostParts"
                                    },
                                    "property": {
                                      "type": "NumericLiteral",
                                      "start": 2213,
                                      "end": 2214,
                                      "loc": {
                                        "start": {
                                          "line": 83,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 83,
                                          "column": 25
                                        }
                                      },
                                      "extra": {
                                        "rawValue": 1,
                                        "raw": "1"
                                      },
                                      "value": 1
                                    },
                                    "computed": true
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 2219,
                                    "end": 2520,
                                    "loc": {
                                      "start": {
                                        "line": 83,
                                        "column": 30
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 2309,
                                        "end": 2357,
                                        "loc": {
                                          "start": {
                                            "line": 85,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 85,
                                            "column": 58
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 2313,
                                            "end": 2357,
                                            "loc": {
                                              "start": {
                                                "line": 85,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 85,
                                                "column": 58
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 2313,
                                              "end": 2327,
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 28
                                                },
                                                "identifierName": "authentication"
                                              },
                                              "name": "authentication",
                                              "leadingComments": null
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 2330,
                                              "end": 2357,
                                              "loc": {
                                                "start": {
                                                  "line": 85,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 85,
                                                  "column": 58
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2330,
                                                "end": 2350,
                                                "loc": {
                                                  "start": {
                                                    "line": 85,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 85,
                                                    "column": 51
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2330,
                                                  "end": 2344,
                                                  "loc": {
                                                    "start": {
                                                      "line": 85,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 85,
                                                      "column": 45
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 2330,
                                                    "end": 2339,
                                                    "loc": {
                                                      "start": {
                                                        "line": 85,
                                                        "column": 31
                                                      },
                                                      "end": {
                                                        "line": 85,
                                                        "column": 40
                                                      },
                                                      "identifierName": "hostParts"
                                                    },
                                                    "name": "hostParts"
                                                  },
                                                  "property": {
                                                    "type": "NumericLiteral",
                                                    "start": 2341,
                                                    "end": 2342,
                                                    "loc": {
                                                      "start": {
                                                        "line": 85,
                                                        "column": 42
                                                      },
                                                      "end": {
                                                        "line": 85,
                                                        "column": 43
                                                      }
                                                    },
                                                    "extra": {
                                                      "rawValue": 0,
                                                      "raw": "0"
                                                    },
                                                    "value": 0
                                                  },
                                                  "computed": true
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2345,
                                                  "end": 2350,
                                                  "loc": {
                                                    "start": {
                                                      "line": 85,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 85,
                                                      "column": 51
                                                    },
                                                    "identifierName": "split"
                                                  },
                                                  "name": "split"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "StringLiteral",
                                                  "start": 2352,
                                                  "end": 2355,
                                                  "loc": {
                                                    "start": {
                                                      "line": 85,
                                                      "column": 53
                                                    },
                                                    "end": {
                                                      "line": 85,
                                                      "column": 56
                                                    }
                                                  },
                                                  "extra": {
                                                    "rawValue": ":",
                                                    "raw": "':'"
                                                  },
                                                  "value": ":"
                                                }
                                              ]
                                            },
                                            "leadingComments": null
                                          }
                                        ],
                                        "kind": "let",
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " We have a username and password so we need to update those parts",
                                            "start": 2231,
                                            "end": 2298,
                                            "loc": {
                                              "start": {
                                                "line": 84,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 84,
                                                "column": 77
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2368,
                                        "end": 2411,
                                        "loc": {
                                          "start": {
                                            "line": 86,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 86,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2368,
                                          "end": 2411,
                                          "loc": {
                                            "start": {
                                              "line": 86,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 86,
                                              "column": 53
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2368,
                                            "end": 2389,
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2368,
                                              "end": 2380,
                                              "loc": {
                                                "start": {
                                                  "line": 86,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 86,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2368,
                                                "end": 2372,
                                                "loc": {
                                                  "start": {
                                                    "line": 86,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 86,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2373,
                                                "end": 2380,
                                                "loc": {
                                                  "start": {
                                                    "line": 86,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 86,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2381,
                                              "end": 2389,
                                              "loc": {
                                                "start": {
                                                  "line": 86,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 86,
                                                  "column": 31
                                                },
                                                "identifierName": "username"
                                              },
                                              "name": "username"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2392,
                                            "end": 2411,
                                            "loc": {
                                              "start": {
                                                "line": 86,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 86,
                                                "column": 53
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2392,
                                              "end": 2406,
                                              "loc": {
                                                "start": {
                                                  "line": 86,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 86,
                                                  "column": 48
                                                },
                                                "identifierName": "authentication"
                                              },
                                              "name": "authentication"
                                            },
                                            "property": {
                                              "type": "NumericLiteral",
                                              "start": 2408,
                                              "end": 2409,
                                              "loc": {
                                                "start": {
                                                  "line": 86,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 86,
                                                  "column": 51
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "value": 0
                                            },
                                            "computed": true
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2422,
                                        "end": 2465,
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 53
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2422,
                                          "end": 2465,
                                          "loc": {
                                            "start": {
                                              "line": 87,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 87,
                                              "column": 53
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2422,
                                            "end": 2443,
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2422,
                                              "end": 2434,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2422,
                                                "end": 2426,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2427,
                                                "end": 2434,
                                                "loc": {
                                                  "start": {
                                                    "line": 87,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 87,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2435,
                                              "end": 2443,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 31
                                                },
                                                "identifierName": "password"
                                              },
                                              "name": "password"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2446,
                                            "end": 2465,
                                            "loc": {
                                              "start": {
                                                "line": 87,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 87,
                                                "column": 53
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2446,
                                              "end": 2460,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 34
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 48
                                                },
                                                "identifierName": "authentication"
                                              },
                                              "name": "authentication"
                                            },
                                            "property": {
                                              "type": "NumericLiteral",
                                              "start": 2462,
                                              "end": 2463,
                                              "loc": {
                                                "start": {
                                                  "line": 87,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 87,
                                                  "column": 51
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            },
                                            "computed": true
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2476,
                                        "end": 2510,
                                        "loc": {
                                          "start": {
                                            "line": 88,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 88,
                                            "column": 44
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2476,
                                          "end": 2510,
                                          "loc": {
                                            "start": {
                                              "line": 88,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 88,
                                              "column": 44
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2476,
                                            "end": 2493,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 27
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2476,
                                              "end": 2488,
                                              "loc": {
                                                "start": {
                                                  "line": 88,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 88,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2476,
                                                "end": 2480,
                                                "loc": {
                                                  "start": {
                                                    "line": 88,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 88,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2481,
                                                "end": 2488,
                                                "loc": {
                                                  "start": {
                                                    "line": 88,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 88,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2489,
                                              "end": 2493,
                                              "loc": {
                                                "start": {
                                                  "line": 88,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 88,
                                                  "column": 27
                                                },
                                                "identifierName": "host"
                                              },
                                              "name": "host"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2496,
                                            "end": 2510,
                                            "loc": {
                                              "start": {
                                                "line": 88,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 88,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2496,
                                              "end": 2505,
                                              "loc": {
                                                "start": {
                                                  "line": 88,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 88,
                                                  "column": 39
                                                },
                                                "identifierName": "hostParts"
                                              },
                                              "name": "hostParts"
                                            },
                                            "property": {
                                              "type": "NumericLiteral",
                                              "start": 2507,
                                              "end": 2508,
                                              "loc": {
                                                "start": {
                                                  "line": 88,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 88,
                                                  "column": 42
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            },
                                            "computed": true
                                          }
                                        }
                                      }
                                    ],
                                    "directives": []
                                  },
                                  "alternate": {
                                    "type": "BlockStatement",
                                    "start": 2526,
                                    "end": 2743,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 94,
                                        "column": 9
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2621,
                                        "end": 2649,
                                        "loc": {
                                          "start": {
                                            "line": 91,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 91,
                                            "column": 38
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2621,
                                          "end": 2649,
                                          "loc": {
                                            "start": {
                                              "line": 91,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 91,
                                              "column": 38
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2621,
                                            "end": 2642,
                                            "loc": {
                                              "start": {
                                                "line": 91,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 91,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2621,
                                              "end": 2633,
                                              "loc": {
                                                "start": {
                                                  "line": 91,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 91,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2621,
                                                "end": 2625,
                                                "loc": {
                                                  "start": {
                                                    "line": 91,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 91,
                                                    "column": 14
                                                  }
                                                },
                                                "leadingComments": null
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2626,
                                                "end": 2633,
                                                "loc": {
                                                  "start": {
                                                    "line": 91,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 91,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false,
                                              "leadingComments": null
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2634,
                                              "end": 2642,
                                              "loc": {
                                                "start": {
                                                  "line": 91,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 91,
                                                  "column": 31
                                                },
                                                "identifierName": "username"
                                              },
                                              "name": "username"
                                            },
                                            "computed": false,
                                            "leadingComments": null
                                          },
                                          "right": {
                                            "type": "NullLiteral",
                                            "start": 2645,
                                            "end": 2649,
                                            "loc": {
                                              "start": {
                                                "line": 91,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 91,
                                                "column": 38
                                              }
                                            }
                                          },
                                          "leadingComments": null
                                        },
                                        "leadingComments": [
                                          {
                                            "type": "CommentLine",
                                            "value": " We dont have a username and password so we need to update those parts",
                                            "start": 2538,
                                            "end": 2610,
                                            "loc": {
                                              "start": {
                                                "line": 90,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 90,
                                                "column": 82
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2660,
                                        "end": 2688,
                                        "loc": {
                                          "start": {
                                            "line": 92,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 92,
                                            "column": 38
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2660,
                                          "end": 2688,
                                          "loc": {
                                            "start": {
                                              "line": 92,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 92,
                                              "column": 38
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2660,
                                            "end": 2681,
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2660,
                                              "end": 2672,
                                              "loc": {
                                                "start": {
                                                  "line": 92,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 92,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2660,
                                                "end": 2664,
                                                "loc": {
                                                  "start": {
                                                    "line": 92,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 92,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2665,
                                                "end": 2672,
                                                "loc": {
                                                  "start": {
                                                    "line": 92,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 92,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2673,
                                              "end": 2681,
                                              "loc": {
                                                "start": {
                                                  "line": 92,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 92,
                                                  "column": 31
                                                },
                                                "identifierName": "password"
                                              },
                                              "name": "password"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "NullLiteral",
                                            "start": 2684,
                                            "end": 2688,
                                            "loc": {
                                              "start": {
                                                "line": 92,
                                                "column": 34
                                              },
                                              "end": {
                                                "line": 92,
                                                "column": 38
                                              }
                                            }
                                          }
                                        }
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 2699,
                                        "end": 2733,
                                        "loc": {
                                          "start": {
                                            "line": 93,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 93,
                                            "column": 44
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 2699,
                                          "end": 2733,
                                          "loc": {
                                            "start": {
                                              "line": 93,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 93,
                                              "column": 44
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 2699,
                                            "end": 2716,
                                            "loc": {
                                              "start": {
                                                "line": 93,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 93,
                                                "column": 27
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 2699,
                                              "end": 2711,
                                              "loc": {
                                                "start": {
                                                  "line": 93,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 93,
                                                  "column": 22
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 2699,
                                                "end": 2703,
                                                "loc": {
                                                  "start": {
                                                    "line": 93,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 93,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 2704,
                                                "end": 2711,
                                                "loc": {
                                                  "start": {
                                                    "line": 93,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 93,
                                                    "column": 22
                                                  },
                                                  "identifierName": "__parts"
                                                },
                                                "name": "__parts"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 2712,
                                              "end": 2716,
                                              "loc": {
                                                "start": {
                                                  "line": 93,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 93,
                                                  "column": 27
                                                },
                                                "identifierName": "host"
                                              },
                                              "name": "host"
                                            },
                                            "computed": false
                                          },
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 2719,
                                            "end": 2733,
                                            "loc": {
                                              "start": {
                                                "line": 93,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 93,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 2719,
                                              "end": 2728,
                                              "loc": {
                                                "start": {
                                                  "line": 93,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 93,
                                                  "column": 39
                                                },
                                                "identifierName": "hostParts"
                                              },
                                              "name": "hostParts"
                                            },
                                            "property": {
                                              "type": "NumericLiteral",
                                              "start": 2730,
                                              "end": 2731,
                                              "loc": {
                                                "start": {
                                                  "line": 93,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 93,
                                                  "column": 42
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 0,
                                                "raw": "0"
                                              },
                                              "value": 0
                                            },
                                            "computed": true
                                          }
                                        }
                                      }
                                    ],
                                    "directives": []
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " Split host, username and password if needed",
                                "start": 2054,
                                "end": 2100,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 52
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 2759,
                            "end": 2821,
                            "loc": {
                              "start": {
                                "line": 97,
                                "column": 6
                              },
                              "end": {
                                "line": 97,
                                "column": 68
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 2759,
                              "end": 2821,
                              "loc": {
                                "start": {
                                  "line": 97,
                                  "column": 6
                                },
                                "end": {
                                  "line": 97,
                                  "column": 68
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 2759,
                                "end": 2782,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 29
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 2759,
                                  "end": 2771,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 18
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 2759,
                                    "end": 2763,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2764,
                                    "end": 2771,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 18
                                      },
                                      "identifierName": "__parts"
                                    },
                                    "name": "__parts"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2772,
                                  "end": 2782,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 29
                                    },
                                    "identifierName": "parameters"
                                  },
                                  "name": "parameters"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "LogicalExpression",
                                "start": 2785,
                                "end": 2821,
                                "loc": {
                                  "start": {
                                    "line": 97,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 97,
                                    "column": 68
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 2785,
                                  "end": 2813,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 60
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 2785,
                                    "end": 2797,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2785,
                                      "end": 2790,
                                      "loc": {
                                        "start": {
                                          "line": 97,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 97,
                                          "column": 37
                                        },
                                        "identifierName": "parts"
                                      },
                                      "name": "parts"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2791,
                                      "end": 2797,
                                      "loc": {
                                        "start": {
                                          "line": 97,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 97,
                                          "column": 44
                                        },
                                        "identifierName": "groups"
                                      },
                                      "name": "groups"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "StringLiteral",
                                    "start": 2799,
                                    "end": 2811,
                                    "loc": {
                                      "start": {
                                        "line": 97,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 97,
                                        "column": 58
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "parameters",
                                      "raw": "'parameters'"
                                    },
                                    "value": "parameters"
                                  },
                                  "computed": true
                                },
                                "operator": "||",
                                "right": {
                                  "type": "NullLiteral",
                                  "start": 2817,
                                  "end": 2821,
                                  "loc": {
                                    "start": {
                                      "line": 97,
                                      "column": 64
                                    },
                                    "end": {
                                      "line": 97,
                                      "column": 68
                                    }
                                  },
                                  "leadingComments": null,
                                  "trailingComments": null
                                },
                                "trailingComments": null
                              },
                              "trailingComments": null
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " Split the parameters into an object",
                                "start": 2828,
                                "end": 2866,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 44
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 2873,
                            "end": 3336,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 6
                              },
                              "end": {
                                "line": 111,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 2878,
                              "end": 2901,
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 11
                                },
                                "end": {
                                  "line": 99,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2878,
                                "end": 2890,
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2878,
                                  "end": 2882,
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 15
                                    }
                                  },
                                  "leadingComments": null
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2883,
                                  "end": 2890,
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 23
                                    },
                                    "identifierName": "__parts"
                                  },
                                  "name": "__parts"
                                },
                                "computed": false,
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2891,
                                "end": 2901,
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 34
                                  },
                                  "identifierName": "parameters"
                                },
                                "name": "parameters"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 2904,
                              "end": 3284,
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 37
                                },
                                "end": {
                                  "line": 109,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2914,
                                  "end": 2933,
                                  "loc": {
                                    "start": {
                                      "line": 100,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 100,
                                      "column": 27
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2918,
                                      "end": 2933,
                                      "loc": {
                                        "start": {
                                          "line": 100,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 100,
                                          "column": 27
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2918,
                                        "end": 2928,
                                        "loc": {
                                          "start": {
                                            "line": 100,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 100,
                                            "column": 22
                                          },
                                          "identifierName": "parameters"
                                        },
                                        "name": "parameters"
                                      },
                                      "init": {
                                        "type": "ObjectExpression",
                                        "start": 2931,
                                        "end": 2933,
                                        "loc": {
                                          "start": {
                                            "line": 100,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 100,
                                            "column": 27
                                          }
                                        },
                                        "properties": []
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 2942,
                                  "end": 3009,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 75
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 2946,
                                      "end": 3009,
                                      "loc": {
                                        "start": {
                                          "line": 101,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 101,
                                          "column": 75
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 2946,
                                        "end": 2952,
                                        "loc": {
                                          "start": {
                                            "line": 101,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 101,
                                            "column": 18
                                          },
                                          "identifierName": "groups"
                                        },
                                        "name": "groups"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 2955,
                                        "end": 3009,
                                        "loc": {
                                          "start": {
                                            "line": 101,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 101,
                                            "column": 75
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 2955,
                                          "end": 3002,
                                          "loc": {
                                            "start": {
                                              "line": 101,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 101,
                                              "column": 68
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 2955,
                                            "end": 2996,
                                            "loc": {
                                              "start": {
                                                "line": 101,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 101,
                                                "column": 62
                                              }
                                            },
                                            "object": {
                                              "type": "CallExpression",
                                              "start": 2955,
                                              "end": 2991,
                                              "loc": {
                                                "start": {
                                                  "line": 101,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 101,
                                                  "column": 57
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 2955,
                                                "end": 2984,
                                                "loc": {
                                                  "start": {
                                                    "line": 101,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 101,
                                                    "column": 50
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 2955,
                                                  "end": 2978,
                                                  "loc": {
                                                    "start": {
                                                      "line": 101,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 101,
                                                      "column": 44
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 2955,
                                                    "end": 2967,
                                                    "loc": {
                                                      "start": {
                                                        "line": 101,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 101,
                                                        "column": 33
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 2955,
                                                      "end": 2959,
                                                      "loc": {
                                                        "start": {
                                                          "line": 101,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 101,
                                                          "column": 25
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 2960,
                                                      "end": 2967,
                                                      "loc": {
                                                        "start": {
                                                          "line": 101,
                                                          "column": 26
                                                        },
                                                        "end": {
                                                          "line": 101,
                                                          "column": 33
                                                        },
                                                        "identifierName": "__parts"
                                                      },
                                                      "name": "__parts"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 2968,
                                                    "end": 2978,
                                                    "loc": {
                                                      "start": {
                                                        "line": 101,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 101,
                                                        "column": 44
                                                      },
                                                      "identifierName": "parameters"
                                                    },
                                                    "name": "parameters"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 2979,
                                                  "end": 2984,
                                                  "loc": {
                                                    "start": {
                                                      "line": 101,
                                                      "column": 45
                                                    },
                                                    "end": {
                                                      "line": 101,
                                                      "column": 50
                                                    },
                                                    "identifierName": "split"
                                                  },
                                                  "name": "split"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "StringLiteral",
                                                  "start": 2986,
                                                  "end": 2989,
                                                  "loc": {
                                                    "start": {
                                                      "line": 101,
                                                      "column": 52
                                                    },
                                                    "end": {
                                                      "line": 101,
                                                      "column": 55
                                                    }
                                                  },
                                                  "extra": {
                                                    "rawValue": "?",
                                                    "raw": "'?'"
                                                  },
                                                  "value": "?"
                                                }
                                              ]
                                            },
                                            "property": {
                                              "type": "NumericLiteral",
                                              "start": 2993,
                                              "end": 2994,
                                              "loc": {
                                                "start": {
                                                  "line": 101,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 101,
                                                  "column": 60
                                                }
                                              },
                                              "extra": {
                                                "rawValue": 1,
                                                "raw": "1"
                                              },
                                              "value": 1
                                            },
                                            "computed": true
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2997,
                                            "end": 3002,
                                            "loc": {
                                              "start": {
                                                "line": 101,
                                                "column": 63
                                              },
                                              "end": {
                                                "line": 101,
                                                "column": 68
                                              },
                                              "identifierName": "split"
                                            },
                                            "name": "split"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "StringLiteral",
                                            "start": 3004,
                                            "end": 3007,
                                            "loc": {
                                              "start": {
                                                "line": 101,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 101,
                                                "column": 73
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "&",
                                              "raw": "'&'"
                                            },
                                            "value": "&"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "let"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3018,
                                  "end": 3231,
                                  "loc": {
                                    "start": {
                                      "line": 102,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 107,
                                      "column": 11
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 3018,
                                    "end": 3231,
                                    "loc": {
                                      "start": {
                                        "line": 102,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 107,
                                        "column": 11
                                      }
                                    },
                                    "callee": {
                                      "type": "Identifier",
                                      "start": 3018,
                                      "end": 3022,
                                      "loc": {
                                        "start": {
                                          "line": 102,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 102,
                                          "column": 12
                                        },
                                        "identifierName": "loop"
                                      },
                                      "name": "loop"
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 3024,
                                        "end": 3030,
                                        "loc": {
                                          "start": {
                                            "line": 102,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 102,
                                            "column": 20
                                          },
                                          "identifierName": "groups"
                                        },
                                        "name": "groups"
                                      },
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 3032,
                                        "end": 3229,
                                        "loc": {
                                          "start": {
                                            "line": 102,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 107,
                                            "column": 9
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 3034,
                                            "end": 3039,
                                            "loc": {
                                              "start": {
                                                "line": 102,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 102,
                                                "column": 29
                                              },
                                              "identifierName": "group"
                                            },
                                            "name": "group"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 3045,
                                          "end": 3229,
                                          "loc": {
                                            "start": {
                                              "line": 102,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 107,
                                              "column": 9
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "VariableDeclaration",
                                              "start": 3057,
                                              "end": 3086,
                                              "loc": {
                                                "start": {
                                                  "line": 103,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 103,
                                                  "column": 39
                                                }
                                              },
                                              "declarations": [
                                                {
                                                  "type": "VariableDeclarator",
                                                  "start": 3061,
                                                  "end": 3086,
                                                  "loc": {
                                                    "start": {
                                                      "line": 103,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 103,
                                                      "column": 39
                                                    }
                                                  },
                                                  "id": {
                                                    "type": "Identifier",
                                                    "start": 3061,
                                                    "end": 3065,
                                                    "loc": {
                                                      "start": {
                                                        "line": 103,
                                                        "column": 14
                                                      },
                                                      "end": {
                                                        "line": 103,
                                                        "column": 18
                                                      },
                                                      "identifierName": "pair"
                                                    },
                                                    "name": "pair"
                                                  },
                                                  "init": {
                                                    "type": "CallExpression",
                                                    "start": 3068,
                                                    "end": 3086,
                                                    "loc": {
                                                      "start": {
                                                        "line": 103,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 103,
                                                        "column": 39
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 3068,
                                                      "end": 3079,
                                                      "loc": {
                                                        "start": {
                                                          "line": 103,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 103,
                                                          "column": 32
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 3068,
                                                        "end": 3073,
                                                        "loc": {
                                                          "start": {
                                                            "line": 103,
                                                            "column": 21
                                                          },
                                                          "end": {
                                                            "line": 103,
                                                            "column": 26
                                                          },
                                                          "identifierName": "group"
                                                        },
                                                        "name": "group"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 3074,
                                                        "end": 3079,
                                                        "loc": {
                                                          "start": {
                                                            "line": 103,
                                                            "column": 27
                                                          },
                                                          "end": {
                                                            "line": 103,
                                                            "column": 32
                                                          },
                                                          "identifierName": "split"
                                                        },
                                                        "name": "split"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "StringLiteral",
                                                        "start": 3081,
                                                        "end": 3084,
                                                        "loc": {
                                                          "start": {
                                                            "line": 103,
                                                            "column": 34
                                                          },
                                                          "end": {
                                                            "line": 103,
                                                            "column": 37
                                                          }
                                                        },
                                                        "extra": {
                                                          "rawValue": "=",
                                                          "raw": "'='"
                                                        },
                                                        "value": "="
                                                      }
                                                    ]
                                                  }
                                                }
                                              ],
                                              "kind": "let"
                                            },
                                            {
                                              "type": "IfStatement",
                                              "start": 3097,
                                              "end": 3219,
                                              "loc": {
                                                "start": {
                                                  "line": 104,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 106,
                                                  "column": 11
                                                }
                                              },
                                              "test": {
                                                "type": "BinaryExpression",
                                                "start": 3102,
                                                "end": 3118,
                                                "loc": {
                                                  "start": {
                                                    "line": 104,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 104,
                                                    "column": 31
                                                  }
                                                },
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 3102,
                                                  "end": 3111,
                                                  "loc": {
                                                    "start": {
                                                      "line": 104,
                                                      "column": 15
                                                    },
                                                    "end": {
                                                      "line": 104,
                                                      "column": 24
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 3102,
                                                    "end": 3106,
                                                    "loc": {
                                                      "start": {
                                                        "line": 104,
                                                        "column": 15
                                                      },
                                                      "end": {
                                                        "line": 104,
                                                        "column": 19
                                                      },
                                                      "identifierName": "pair"
                                                    },
                                                    "name": "pair"
                                                  },
                                                  "property": {
                                                    "type": "NumericLiteral",
                                                    "start": 3108,
                                                    "end": 3109,
                                                    "loc": {
                                                      "start": {
                                                        "line": 104,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 104,
                                                        "column": 22
                                                      }
                                                    },
                                                    "extra": {
                                                      "rawValue": 0,
                                                      "raw": "0"
                                                    },
                                                    "value": 0
                                                  },
                                                  "computed": true
                                                },
                                                "operator": "!==",
                                                "right": {
                                                  "type": "StringLiteral",
                                                  "start": 3116,
                                                  "end": 3118,
                                                  "loc": {
                                                    "start": {
                                                      "line": 104,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 104,
                                                      "column": 31
                                                    }
                                                  },
                                                  "extra": {
                                                    "rawValue": "",
                                                    "raw": "''"
                                                  },
                                                  "value": ""
                                                }
                                              },
                                              "consequent": {
                                                "type": "BlockStatement",
                                                "start": 3121,
                                                "end": 3219,
                                                "loc": {
                                                  "start": {
                                                    "line": 104,
                                                    "column": 34
                                                  },
                                                  "end": {
                                                    "line": 106,
                                                    "column": 11
                                                  }
                                                },
                                                "body": [
                                                  {
                                                    "type": "ExpressionStatement",
                                                    "start": 3135,
                                                    "end": 3207,
                                                    "loc": {
                                                      "start": {
                                                        "line": 105,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 105,
                                                        "column": 84
                                                      }
                                                    },
                                                    "expression": {
                                                      "type": "AssignmentExpression",
                                                      "start": 3135,
                                                      "end": 3207,
                                                      "loc": {
                                                        "start": {
                                                          "line": 105,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 105,
                                                          "column": 84
                                                        }
                                                      },
                                                      "operator": "=",
                                                      "left": {
                                                        "type": "MemberExpression",
                                                        "start": 3135,
                                                        "end": 3158,
                                                        "loc": {
                                                          "start": {
                                                            "line": 105,
                                                            "column": 12
                                                          },
                                                          "end": {
                                                            "line": 105,
                                                            "column": 35
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 3135,
                                                          "end": 3145,
                                                          "loc": {
                                                            "start": {
                                                              "line": 105,
                                                              "column": 12
                                                            },
                                                            "end": {
                                                              "line": 105,
                                                              "column": 22
                                                            },
                                                            "identifierName": "parameters"
                                                          },
                                                          "name": "parameters"
                                                        },
                                                        "property": {
                                                          "type": "MemberExpression",
                                                          "start": 3147,
                                                          "end": 3156,
                                                          "loc": {
                                                            "start": {
                                                              "line": 105,
                                                              "column": 24
                                                            },
                                                            "end": {
                                                              "line": 105,
                                                              "column": 33
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 3147,
                                                            "end": 3151,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 24
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 28
                                                              },
                                                              "identifierName": "pair"
                                                            },
                                                            "name": "pair"
                                                          },
                                                          "property": {
                                                            "type": "NumericLiteral",
                                                            "start": 3153,
                                                            "end": 3154,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 30
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 31
                                                              }
                                                            },
                                                            "extra": {
                                                              "rawValue": 0,
                                                              "raw": "0"
                                                            },
                                                            "value": 0
                                                          },
                                                          "computed": true
                                                        },
                                                        "computed": true
                                                      },
                                                      "right": {
                                                        "type": "ConditionalExpression",
                                                        "start": 3161,
                                                        "end": 3207,
                                                        "loc": {
                                                          "start": {
                                                            "line": 105,
                                                            "column": 38
                                                          },
                                                          "end": {
                                                            "line": 105,
                                                            "column": 84
                                                          }
                                                        },
                                                        "test": {
                                                          "type": "BinaryExpression",
                                                          "start": 3163,
                                                          "end": 3186,
                                                          "loc": {
                                                            "start": {
                                                              "line": 105,
                                                              "column": 40
                                                            },
                                                            "end": {
                                                              "line": 105,
                                                              "column": 63
                                                            }
                                                          },
                                                          "left": {
                                                            "type": "MemberExpression",
                                                            "start": 3163,
                                                            "end": 3172,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 40
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 49
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 3163,
                                                              "end": 3167,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 105,
                                                                  "column": 40
                                                                },
                                                                "end": {
                                                                  "line": 105,
                                                                  "column": 44
                                                                },
                                                                "identifierName": "pair"
                                                              },
                                                              "name": "pair"
                                                            },
                                                            "property": {
                                                              "type": "NumericLiteral",
                                                              "start": 3169,
                                                              "end": 3170,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 105,
                                                                  "column": 46
                                                                },
                                                                "end": {
                                                                  "line": 105,
                                                                  "column": 47
                                                                }
                                                              },
                                                              "extra": {
                                                                "rawValue": 1,
                                                                "raw": "1"
                                                              },
                                                              "value": 1
                                                            },
                                                            "computed": true
                                                          },
                                                          "operator": "!==",
                                                          "right": {
                                                            "type": "Identifier",
                                                            "start": 3177,
                                                            "end": 3186,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 54
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 63
                                                              },
                                                              "identifierName": "undefined"
                                                            },
                                                            "name": "undefined"
                                                          },
                                                          "extra": {
                                                            "parenthesized": true,
                                                            "parenStart": 3161
                                                          }
                                                        },
                                                        "consequent": {
                                                          "type": "MemberExpression",
                                                          "start": 3191,
                                                          "end": 3200,
                                                          "loc": {
                                                            "start": {
                                                              "line": 105,
                                                              "column": 68
                                                            },
                                                            "end": {
                                                              "line": 105,
                                                              "column": 77
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 3191,
                                                            "end": 3195,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 68
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 72
                                                              },
                                                              "identifierName": "pair"
                                                            },
                                                            "name": "pair"
                                                          },
                                                          "property": {
                                                            "type": "NumericLiteral",
                                                            "start": 3197,
                                                            "end": 3198,
                                                            "loc": {
                                                              "start": {
                                                                "line": 105,
                                                                "column": 74
                                                              },
                                                              "end": {
                                                                "line": 105,
                                                                "column": 75
                                                              }
                                                            },
                                                            "extra": {
                                                              "rawValue": 1,
                                                              "raw": "1"
                                                            },
                                                            "value": 1
                                                          },
                                                          "computed": true
                                                        },
                                                        "alternate": {
                                                          "type": "BooleanLiteral",
                                                          "start": 3203,
                                                          "end": 3207,
                                                          "loc": {
                                                            "start": {
                                                              "line": 105,
                                                              "column": 80
                                                            },
                                                            "end": {
                                                              "line": 105,
                                                              "column": 84
                                                            }
                                                          },
                                                          "value": true
                                                        }
                                                      }
                                                    }
                                                  }
                                                ],
                                                "directives": []
                                              },
                                              "alternate": null
                                            }
                                          ],
                                          "directives": []
                                        }
                                      }
                                    ]
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3240,
                                  "end": 3276,
                                  "loc": {
                                    "start": {
                                      "line": 108,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 108,
                                      "column": 44
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 3240,
                                    "end": 3276,
                                    "loc": {
                                      "start": {
                                        "line": 108,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 108,
                                        "column": 44
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 3240,
                                      "end": 3263,
                                      "loc": {
                                        "start": {
                                          "line": 108,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 108,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 3240,
                                        "end": 3252,
                                        "loc": {
                                          "start": {
                                            "line": 108,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 108,
                                            "column": 20
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 3240,
                                          "end": 3244,
                                          "loc": {
                                            "start": {
                                              "line": 108,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 108,
                                              "column": 12
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3245,
                                          "end": 3252,
                                          "loc": {
                                            "start": {
                                              "line": 108,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 108,
                                              "column": 20
                                            },
                                            "identifierName": "__parts"
                                          },
                                          "name": "__parts"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3253,
                                        "end": 3263,
                                        "loc": {
                                          "start": {
                                            "line": 108,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 108,
                                            "column": 31
                                          },
                                          "identifierName": "parameters"
                                        },
                                        "name": "parameters"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 3266,
                                      "end": 3276,
                                      "loc": {
                                        "start": {
                                          "line": 108,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 108,
                                          "column": 44
                                        },
                                        "identifierName": "parameters"
                                      },
                                      "name": "parameters"
                                    }
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": {
                              "type": "BlockStatement",
                              "start": 3290,
                              "end": 3336,
                              "loc": {
                                "start": {
                                  "line": 109,
                                  "column": 13
                                },
                                "end": {
                                  "line": 111,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3300,
                                  "end": 3328,
                                  "loc": {
                                    "start": {
                                      "line": 110,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 110,
                                      "column": 36
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 3300,
                                    "end": 3328,
                                    "loc": {
                                      "start": {
                                        "line": 110,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 110,
                                        "column": 36
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 3300,
                                      "end": 3323,
                                      "loc": {
                                        "start": {
                                          "line": 110,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 110,
                                          "column": 31
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 3300,
                                        "end": 3312,
                                        "loc": {
                                          "start": {
                                            "line": 110,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 110,
                                            "column": 20
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 3300,
                                          "end": 3304,
                                          "loc": {
                                            "start": {
                                              "line": 110,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 110,
                                              "column": 12
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 3305,
                                          "end": 3312,
                                          "loc": {
                                            "start": {
                                              "line": 110,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 110,
                                              "column": 20
                                            },
                                            "identifierName": "__parts"
                                          },
                                          "name": "__parts"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3313,
                                        "end": 3323,
                                        "loc": {
                                          "start": {
                                            "line": 110,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 110,
                                            "column": 31
                                          },
                                          "identifierName": "parameters"
                                        },
                                        "name": "parameters"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "ObjectExpression",
                                      "start": 3326,
                                      "end": 3328,
                                      "loc": {
                                        "start": {
                                          "line": 110,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 110,
                                          "column": 36
                                        }
                                      },
                                      "properties": []
                                    }
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " Split the parameters into an object",
                                "start": 2828,
                                "end": 2866,
                                "loc": {
                                  "start": {
                                    "line": 98,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 98,
                                    "column": 44
                                  }
                                }
                              }
                            ]
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Split the url into parts based on the url regular expression\n   * @private\n   ",
                    "start": 1440,
                    "end": 1529,
                    "loc": {
                      "start": {
                        "line": 67,
                        "column": 2
                      },
                      "end": {
                        "line": 70,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the protocol of the url\n   * @return {String} The string containing the protocol\n   ",
                    "start": 3350,
                    "end": 3453,
                    "loc": {
                      "start": {
                        "line": 115,
                        "column": 2
                      },
                      "end": {
                        "line": 118,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3456,
                "end": 3510,
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 2
                  },
                  "end": {
                    "line": 121,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3460,
                  "end": 3468,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 6
                    },
                    "end": {
                      "line": 119,
                      "column": 14
                    },
                    "identifierName": "protocol"
                  },
                  "name": "protocol"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3472,
                  "end": 3510,
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 18
                    },
                    "end": {
                      "line": 121,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3478,
                      "end": 3506,
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 4
                        },
                        "end": {
                          "line": 120,
                          "column": 32
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3485,
                        "end": 3506,
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 11
                          },
                          "end": {
                            "line": 120,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 3485,
                          "end": 3497,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 11
                            },
                            "end": {
                              "line": 120,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3485,
                            "end": 3489,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 11
                              },
                              "end": {
                                "line": 120,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3490,
                            "end": 3497,
                            "loc": {
                              "start": {
                                "line": 120,
                                "column": 16
                              },
                              "end": {
                                "line": 120,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3498,
                          "end": 3506,
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 24
                            },
                            "end": {
                              "line": 120,
                              "column": 32
                            },
                            "identifierName": "protocol"
                          },
                          "name": "protocol"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the protocol of the url\n   * @return {String} The string containing the protocol\n   ",
                    "start": 3350,
                    "end": 3453,
                    "loc": {
                      "start": {
                        "line": 115,
                        "column": 2
                      },
                      "end": {
                        "line": 118,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the host and port of the url\n   * @return {String} The string containing the hostname and port\n   ",
                    "start": 3513,
                    "end": 3630,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 2
                      },
                      "end": {
                        "line": 125,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3633,
                "end": 3679,
                "loc": {
                  "start": {
                    "line": 126,
                    "column": 2
                  },
                  "end": {
                    "line": 128,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3637,
                  "end": 3641,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 6
                    },
                    "end": {
                      "line": 126,
                      "column": 10
                    },
                    "identifierName": "host"
                  },
                  "name": "host"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3645,
                  "end": 3679,
                  "loc": {
                    "start": {
                      "line": 126,
                      "column": 14
                    },
                    "end": {
                      "line": 128,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3651,
                      "end": 3675,
                      "loc": {
                        "start": {
                          "line": 127,
                          "column": 4
                        },
                        "end": {
                          "line": 127,
                          "column": 28
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3658,
                        "end": 3675,
                        "loc": {
                          "start": {
                            "line": 127,
                            "column": 11
                          },
                          "end": {
                            "line": 127,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 3658,
                          "end": 3670,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 11
                            },
                            "end": {
                              "line": 127,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3658,
                            "end": 3662,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 11
                              },
                              "end": {
                                "line": 127,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3663,
                            "end": 3670,
                            "loc": {
                              "start": {
                                "line": 127,
                                "column": 16
                              },
                              "end": {
                                "line": 127,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3671,
                          "end": 3675,
                          "loc": {
                            "start": {
                              "line": 127,
                              "column": 24
                            },
                            "end": {
                              "line": 127,
                              "column": 28
                            },
                            "identifierName": "host"
                          },
                          "name": "host"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the host and port of the url\n   * @return {String} The string containing the hostname and port\n   ",
                    "start": 3513,
                    "end": 3630,
                    "loc": {
                      "start": {
                        "line": 122,
                        "column": 2
                      },
                      "end": {
                        "line": 125,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the path of the url\n   * @return {String} The string containing the path\n   ",
                    "start": 3682,
                    "end": 3777,
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 2
                      },
                      "end": {
                        "line": 132,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3780,
                "end": 3826,
                "loc": {
                  "start": {
                    "line": 133,
                    "column": 2
                  },
                  "end": {
                    "line": 135,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3784,
                  "end": 3788,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 6
                    },
                    "end": {
                      "line": 133,
                      "column": 10
                    },
                    "identifierName": "path"
                  },
                  "name": "path"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3792,
                  "end": 3826,
                  "loc": {
                    "start": {
                      "line": 133,
                      "column": 14
                    },
                    "end": {
                      "line": 135,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3798,
                      "end": 3822,
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 4
                        },
                        "end": {
                          "line": 134,
                          "column": 28
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3805,
                        "end": 3822,
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 11
                          },
                          "end": {
                            "line": 134,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 3805,
                          "end": 3817,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 11
                            },
                            "end": {
                              "line": 134,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3805,
                            "end": 3809,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 11
                              },
                              "end": {
                                "line": 134,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3810,
                            "end": 3817,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 16
                              },
                              "end": {
                                "line": 134,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3818,
                          "end": 3822,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 24
                            },
                            "end": {
                              "line": 134,
                              "column": 28
                            },
                            "identifierName": "path"
                          },
                          "name": "path"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the path of the url\n   * @return {String} The string containing the path\n   ",
                    "start": 3682,
                    "end": 3777,
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 2
                      },
                      "end": {
                        "line": 132,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the parameters of the url\n   * @return {Object} The query string parameters of the url\n   ",
                    "start": 3829,
                    "end": 3938,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 2
                      },
                      "end": {
                        "line": 139,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3941,
                "end": 3999,
                "loc": {
                  "start": {
                    "line": 140,
                    "column": 2
                  },
                  "end": {
                    "line": 142,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3945,
                  "end": 3955,
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 6
                    },
                    "end": {
                      "line": 140,
                      "column": 16
                    },
                    "identifierName": "parameters"
                  },
                  "name": "parameters"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 3959,
                  "end": 3999,
                  "loc": {
                    "start": {
                      "line": 140,
                      "column": 20
                    },
                    "end": {
                      "line": 142,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 3965,
                      "end": 3995,
                      "loc": {
                        "start": {
                          "line": 141,
                          "column": 4
                        },
                        "end": {
                          "line": 141,
                          "column": 34
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 3972,
                        "end": 3995,
                        "loc": {
                          "start": {
                            "line": 141,
                            "column": 11
                          },
                          "end": {
                            "line": 141,
                            "column": 34
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 3972,
                          "end": 3984,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 11
                            },
                            "end": {
                              "line": 141,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 3972,
                            "end": 3976,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 11
                              },
                              "end": {
                                "line": 141,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3977,
                            "end": 3984,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 16
                              },
                              "end": {
                                "line": 141,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3985,
                          "end": 3995,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 24
                            },
                            "end": {
                              "line": 141,
                              "column": 34
                            },
                            "identifierName": "parameters"
                          },
                          "name": "parameters"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the parameters of the url\n   * @return {Object} The query string parameters of the url\n   ",
                    "start": 3829,
                    "end": 3938,
                    "loc": {
                      "start": {
                        "line": 136,
                        "column": 2
                      },
                      "end": {
                        "line": 139,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the hash of the url\n   * @return {String} The hash of the url\n   ",
                    "start": 4002,
                    "end": 4086,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 2
                      },
                      "end": {
                        "line": 146,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4089,
                "end": 4135,
                "loc": {
                  "start": {
                    "line": 147,
                    "column": 2
                  },
                  "end": {
                    "line": 149,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4093,
                  "end": 4097,
                  "loc": {
                    "start": {
                      "line": 147,
                      "column": 6
                    },
                    "end": {
                      "line": 147,
                      "column": 10
                    },
                    "identifierName": "hash"
                  },
                  "name": "hash"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4101,
                  "end": 4135,
                  "loc": {
                    "start": {
                      "line": 147,
                      "column": 14
                    },
                    "end": {
                      "line": 149,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4107,
                      "end": 4131,
                      "loc": {
                        "start": {
                          "line": 148,
                          "column": 4
                        },
                        "end": {
                          "line": 148,
                          "column": 28
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4114,
                        "end": 4131,
                        "loc": {
                          "start": {
                            "line": 148,
                            "column": 11
                          },
                          "end": {
                            "line": 148,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4114,
                          "end": 4126,
                          "loc": {
                            "start": {
                              "line": 148,
                              "column": 11
                            },
                            "end": {
                              "line": 148,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4114,
                            "end": 4118,
                            "loc": {
                              "start": {
                                "line": 148,
                                "column": 11
                              },
                              "end": {
                                "line": 148,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4119,
                            "end": 4126,
                            "loc": {
                              "start": {
                                "line": 148,
                                "column": 16
                              },
                              "end": {
                                "line": 148,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4127,
                          "end": 4131,
                          "loc": {
                            "start": {
                              "line": 148,
                              "column": 24
                            },
                            "end": {
                              "line": 148,
                              "column": 28
                            },
                            "identifierName": "hash"
                          },
                          "name": "hash"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the hash of the url\n   * @return {String} The hash of the url\n   ",
                    "start": 4002,
                    "end": 4086,
                    "loc": {
                      "start": {
                        "line": 143,
                        "column": 2
                      },
                      "end": {
                        "line": 146,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the username from the url\n   * @return {String} The username from the url\n   ",
                    "start": 4138,
                    "end": 4234,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 2
                      },
                      "end": {
                        "line": 153,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4237,
                "end": 4291,
                "loc": {
                  "start": {
                    "line": 154,
                    "column": 2
                  },
                  "end": {
                    "line": 156,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4241,
                  "end": 4249,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 6
                    },
                    "end": {
                      "line": 154,
                      "column": 14
                    },
                    "identifierName": "username"
                  },
                  "name": "username"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4253,
                  "end": 4291,
                  "loc": {
                    "start": {
                      "line": 154,
                      "column": 18
                    },
                    "end": {
                      "line": 156,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4259,
                      "end": 4287,
                      "loc": {
                        "start": {
                          "line": 155,
                          "column": 4
                        },
                        "end": {
                          "line": 155,
                          "column": 32
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4266,
                        "end": 4287,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 11
                          },
                          "end": {
                            "line": 155,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4266,
                          "end": 4278,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 11
                            },
                            "end": {
                              "line": 155,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4266,
                            "end": 4270,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 11
                              },
                              "end": {
                                "line": 155,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4271,
                            "end": 4278,
                            "loc": {
                              "start": {
                                "line": 155,
                                "column": 16
                              },
                              "end": {
                                "line": 155,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4279,
                          "end": 4287,
                          "loc": {
                            "start": {
                              "line": 155,
                              "column": 24
                            },
                            "end": {
                              "line": 155,
                              "column": 32
                            },
                            "identifierName": "username"
                          },
                          "name": "username"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the username from the url\n   * @return {String} The username from the url\n   ",
                    "start": 4138,
                    "end": 4234,
                    "loc": {
                      "start": {
                        "line": 150,
                        "column": 2
                      },
                      "end": {
                        "line": 153,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the password from the url\n   * @return {String} The password from the url\n   ",
                    "start": 4294,
                    "end": 4390,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 2
                      },
                      "end": {
                        "line": 160,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4393,
                "end": 4447,
                "loc": {
                  "start": {
                    "line": 161,
                    "column": 2
                  },
                  "end": {
                    "line": 163,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4397,
                  "end": 4405,
                  "loc": {
                    "start": {
                      "line": 161,
                      "column": 6
                    },
                    "end": {
                      "line": 161,
                      "column": 14
                    },
                    "identifierName": "password"
                  },
                  "name": "password"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4409,
                  "end": 4447,
                  "loc": {
                    "start": {
                      "line": 161,
                      "column": 18
                    },
                    "end": {
                      "line": 163,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4415,
                      "end": 4443,
                      "loc": {
                        "start": {
                          "line": 162,
                          "column": 4
                        },
                        "end": {
                          "line": 162,
                          "column": 32
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4422,
                        "end": 4443,
                        "loc": {
                          "start": {
                            "line": 162,
                            "column": 11
                          },
                          "end": {
                            "line": 162,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 4422,
                          "end": 4434,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 11
                            },
                            "end": {
                              "line": 162,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4422,
                            "end": 4426,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 11
                              },
                              "end": {
                                "line": 162,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4427,
                            "end": 4434,
                            "loc": {
                              "start": {
                                "line": 162,
                                "column": 16
                              },
                              "end": {
                                "line": 162,
                                "column": 23
                              },
                              "identifierName": "__parts"
                            },
                            "name": "__parts"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4435,
                          "end": 4443,
                          "loc": {
                            "start": {
                              "line": 162,
                              "column": 24
                            },
                            "end": {
                              "line": 162,
                              "column": 32
                            },
                            "identifierName": "password"
                          },
                          "name": "password"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns the password from the url\n   * @return {String} The password from the url\n   ",
                    "start": 4294,
                    "end": 4390,
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 2
                      },
                      "end": {
                        "line": 160,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns all the parts of the url\n   * @return {Object} The object containing all the url parts\n   ",
                    "start": 4450,
                    "end": 4559,
                    "loc": {
                      "start": {
                        "line": 164,
                        "column": 2
                      },
                      "end": {
                        "line": 167,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4562,
                "end": 4604,
                "loc": {
                  "start": {
                    "line": 168,
                    "column": 2
                  },
                  "end": {
                    "line": 170,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4566,
                  "end": 4571,
                  "loc": {
                    "start": {
                      "line": 168,
                      "column": 6
                    },
                    "end": {
                      "line": 168,
                      "column": 11
                    },
                    "identifierName": "parts"
                  },
                  "name": "parts"
                },
                "kind": "get",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4575,
                  "end": 4604,
                  "loc": {
                    "start": {
                      "line": 168,
                      "column": 15
                    },
                    "end": {
                      "line": 170,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4581,
                      "end": 4600,
                      "loc": {
                        "start": {
                          "line": 169,
                          "column": 4
                        },
                        "end": {
                          "line": 169,
                          "column": 23
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4588,
                        "end": 4600,
                        "loc": {
                          "start": {
                            "line": 169,
                            "column": 11
                          },
                          "end": {
                            "line": 169,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4588,
                          "end": 4592,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 11
                            },
                            "end": {
                              "line": 169,
                              "column": 15
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4593,
                          "end": 4600,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 16
                            },
                            "end": {
                              "line": 169,
                              "column": 23
                            },
                            "identifierName": "__parts"
                          },
                          "name": "__parts"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Returns all the parts of the url\n   * @return {Object} The object containing all the url parts\n   ",
                    "start": 4450,
                    "end": 4559,
                    "loc": {
                      "start": {
                        "line": 164,
                        "column": 2
                      },
                      "end": {
                        "line": 167,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Return the url\n   * @return {String} The provided url\n   ",
                    "start": 4608,
                    "end": 4676,
                    "loc": {
                      "start": {
                        "line": 172,
                        "column": 2
                      },
                      "end": {
                        "line": 175,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4679,
                "end": 4718,
                "loc": {
                  "start": {
                    "line": 176,
                    "column": 2
                  },
                  "end": {
                    "line": 178,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4679,
                  "end": 4687,
                  "loc": {
                    "start": {
                      "line": 176,
                      "column": 2
                    },
                    "end": {
                      "line": 176,
                      "column": 10
                    },
                    "identifierName": "toString"
                  },
                  "name": "toString",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "start": 4691,
                  "end": 4718,
                  "loc": {
                    "start": {
                      "line": 176,
                      "column": 14
                    },
                    "end": {
                      "line": 178,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "start": 4697,
                      "end": 4714,
                      "loc": {
                        "start": {
                          "line": 177,
                          "column": 4
                        },
                        "end": {
                          "line": 177,
                          "column": 21
                        }
                      },
                      "argument": {
                        "type": "MemberExpression",
                        "start": 4704,
                        "end": 4714,
                        "loc": {
                          "start": {
                            "line": 177,
                            "column": 11
                          },
                          "end": {
                            "line": 177,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 4704,
                          "end": 4708,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 11
                            },
                            "end": {
                              "line": 177,
                              "column": 15
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4709,
                          "end": 4714,
                          "loc": {
                            "start": {
                              "line": 177,
                              "column": 16
                            },
                            "end": {
                              "line": 177,
                              "column": 21
                            },
                            "identifierName": "__url"
                          },
                          "name": "__url"
                        },
                        "computed": false
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Return the url\n   * @return {String} The provided url\n   ",
                    "start": 4608,
                    "end": 4676,
                    "loc": {
                      "start": {
                        "line": 172,
                        "column": 2
                      },
                      "end": {
                        "line": 175,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Set the url string\n   * @param {String} url The url string\n   * @return {Url} The instance of the Url class\n   ",
                    "start": 4722,
                    "end": 4844,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 2
                      },
                      "end": {
                        "line": 184,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 4847,
                "end": 4972,
                "loc": {
                  "start": {
                    "line": 185,
                    "column": 2
                  },
                  "end": {
                    "line": 189,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 4847,
                  "end": 4850,
                  "loc": {
                    "start": {
                      "line": 185,
                      "column": 2
                    },
                    "end": {
                      "line": 185,
                      "column": 5
                    },
                    "identifierName": "set"
                  },
                  "name": "set",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 4853,
                    "end": 4856,
                    "loc": {
                      "start": {
                        "line": 185,
                        "column": 8
                      },
                      "end": {
                        "line": 185,
                        "column": 11
                      },
                      "identifierName": "url"
                    },
                    "name": "url"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 4859,
                  "end": 4972,
                  "loc": {
                    "start": {
                      "line": 185,
                      "column": 14
                    },
                    "end": {
                      "line": 189,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 4865,
                      "end": 4933,
                      "loc": {
                        "start": {
                          "line": 186,
                          "column": 4
                        },
                        "end": {
                          "line": 186,
                          "column": 72
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 4865,
                        "end": 4933,
                        "loc": {
                          "start": {
                            "line": 186,
                            "column": 4
                          },
                          "end": {
                            "line": 186,
                            "column": 72
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 4865,
                          "end": 4875,
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 4
                            },
                            "end": {
                              "line": 186,
                              "column": 14
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4865,
                            "end": 4869,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 4
                              },
                              "end": {
                                "line": 186,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4870,
                            "end": 4875,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 9
                              },
                              "end": {
                                "line": 186,
                                "column": 14
                              },
                              "identifierName": "__url"
                            },
                            "name": "__url"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ConditionalExpression",
                          "start": 4878,
                          "end": 4933,
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 17
                            },
                            "end": {
                              "line": 186,
                              "column": 72
                            }
                          },
                          "test": {
                            "type": "Identifier",
                            "start": 4880,
                            "end": 4883,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 19
                              },
                              "end": {
                                "line": 186,
                                "column": 22
                              },
                              "identifierName": "url"
                            },
                            "name": "url",
                            "extra": {
                              "parenthesized": true,
                              "parenStart": 4878
                            }
                          },
                          "consequent": {
                            "type": "CallExpression",
                            "start": 4888,
                            "end": 4910,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 27
                              },
                              "end": {
                                "line": 186,
                                "column": 49
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 4888,
                              "end": 4903,
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 27
                                },
                                "end": {
                                  "line": 186,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4888,
                                "end": 4892,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 31
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4893,
                                "end": 4903,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 42
                                  },
                                  "identifierName": "__parseUrl"
                                },
                                "name": "__parseUrl"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 4905,
                                "end": 4908,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 47
                                  },
                                  "identifierName": "url"
                                },
                                "name": "url"
                              }
                            ]
                          },
                          "alternate": {
                            "type": "MemberExpression",
                            "start": 4913,
                            "end": 4933,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 52
                              },
                              "end": {
                                "line": 186,
                                "column": 72
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 4913,
                              "end": 4928,
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 52
                                },
                                "end": {
                                  "line": 186,
                                  "column": 67
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 4913,
                                "end": 4919,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 58
                                  },
                                  "identifierName": "window"
                                },
                                "name": "window"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4920,
                                "end": 4928,
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 59
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 67
                                  },
                                  "identifierName": "location"
                                },
                                "name": "location"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4929,
                              "end": 4933,
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 68
                                },
                                "end": {
                                  "line": 186,
                                  "column": 72
                                },
                                "identifierName": "href"
                              },
                              "name": "href"
                            },
                            "computed": false
                          }
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 4938,
                      "end": 4952,
                      "loc": {
                        "start": {
                          "line": 187,
                          "column": 4
                        },
                        "end": {
                          "line": 187,
                          "column": 18
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 4938,
                        "end": 4952,
                        "loc": {
                          "start": {
                            "line": 187,
                            "column": 4
                          },
                          "end": {
                            "line": 187,
                            "column": 18
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 4938,
                          "end": 4950,
                          "loc": {
                            "start": {
                              "line": 187,
                              "column": 4
                            },
                            "end": {
                              "line": 187,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 4938,
                            "end": 4942,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 4
                              },
                              "end": {
                                "line": 187,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4943,
                            "end": 4950,
                            "loc": {
                              "start": {
                                "line": 187,
                                "column": 9
                              },
                              "end": {
                                "line": 187,
                                "column": 16
                              },
                              "identifierName": "__split"
                            },
                            "name": "__split"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4957,
                      "end": 4968,
                      "loc": {
                        "start": {
                          "line": 188,
                          "column": 4
                        },
                        "end": {
                          "line": 188,
                          "column": 15
                        }
                      },
                      "argument": {
                        "type": "ThisExpression",
                        "start": 4964,
                        "end": 4968,
                        "loc": {
                          "start": {
                            "line": 188,
                            "column": 11
                          },
                          "end": {
                            "line": 188,
                            "column": 15
                          }
                        }
                      }
                    }
                  ],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Set the url string\n   * @param {String} url The url string\n   * @return {Url} The instance of the Url class\n   ",
                    "start": 4722,
                    "end": 4844,
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 2
                      },
                      "end": {
                        "line": 184,
                        "column": 5
                      }
                    }
                  }
                ]
              }
            ]
          },
          "leadingComments": [
            {
              "type": "CommentBlock",
              "value": "*\n * This class is responsible for parsing and matching urls\n ",
              "start": 77,
              "end": 143,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 0
                },
                "end": {
                  "line": 9,
                  "column": 3
                }
              }
            }
          ],
          "trailingComments": []
        },
        "leadingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * This class is responsible for parsing and matching urls\n ",
            "start": 77,
            "end": 143,
            "loc": {
              "start": {
                "line": 7,
                "column": 0
              },
              "end": {
                "line": 9,
                "column": 3
              }
            }
          }
        ]
      }
    ],
    "directives": [
      {
        "type": "Directive",
        "start": 32,
        "end": 44,
        "loc": {
          "start": {
            "line": 3,
            "column": 0
          },
          "end": {
            "line": 3,
            "column": 12
          }
        },
        "value": {
          "type": "DirectiveLiteral",
          "start": 32,
          "end": 44,
          "loc": {
            "start": {
              "line": 3,
              "column": 0
            },
            "end": {
              "line": 3,
              "column": 12
            }
          },
          "value": "use strict",
          "extra": {
            "raw": "'use strict'",
            "rawValue": "use strict"
          },
          "leadingComments": null
        },
        "leadingComments": [
          {
            "type": "CommentBlock",
            "value": " globals window, document ",
            "start": 0,
            "end": 30,
            "loc": {
              "start": {
                "line": 1,
                "column": 0
              },
              "end": {
                "line": 1,
                "column": 30
              }
            }
          }
        ]
      }
    ]
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": " globals window, document ",
      "start": 0,
      "end": 30,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 30
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n * This class is responsible for parsing and matching urls\n ",
      "start": 77,
      "end": 143,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Creates an instance of Url\n   * @param {String} url A url string. If no url is provided window.location.href is used\n   ",
      "start": 165,
      "end": 296,
      "loc": {
        "start": {
          "line": 11,
          "column": 2
        },
        "end": {
          "line": 14,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains regular expressions used for splitting the url\n     * @type {Object}\n     * @private\n     ",
      "start": 325,
      "end": 437,
      "loc": {
        "start": {
          "line": 16,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains the url provided\n     * @type {String}\n     * @private\n     ",
      "start": 663,
      "end": 745,
      "loc": {
        "start": {
          "line": 29,
          "column": 4
        },
        "end": {
          "line": 33,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains all the parts of the url\n     * @type {Object}\n     * @private\n     ",
      "start": 771,
      "end": 861,
      "loc": {
        "start": {
          "line": 36,
          "column": 4
        },
        "end": {
          "line": 40,
          "column": 7
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Parse a url to the correct format\n   * @param {String} url The url string to be parsed\n   * @return {String} The parsed version of the url\n   * @private\n   ",
      "start": 1060,
      "end": 1227,
      "loc": {
        "start": {
          "line": 54,
          "column": 2
        },
        "end": {
          "line": 59,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Ensures that the href is properly escaped",
      "start": 1357,
      "end": 1401,
      "loc": {
        "start": {
          "line": 63,
          "column": 30
        },
        "end": {
          "line": 63,
          "column": 74
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Split the url into parts based on the url regular expression\n   * @private\n   ",
      "start": 1440,
      "end": 1529,
      "loc": {
        "start": {
          "line": 67,
          "column": 2
        },
        "end": {
          "line": 70,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Split host, username and password if needed",
      "start": 2054,
      "end": 2100,
      "loc": {
        "start": {
          "line": 80,
          "column": 6
        },
        "end": {
          "line": 80,
          "column": 52
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " We have a username and password so we need to update those parts",
      "start": 2231,
      "end": 2298,
      "loc": {
        "start": {
          "line": 84,
          "column": 10
        },
        "end": {
          "line": 84,
          "column": 77
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " We dont have a username and password so we need to update those parts",
      "start": 2538,
      "end": 2610,
      "loc": {
        "start": {
          "line": 90,
          "column": 10
        },
        "end": {
          "line": 90,
          "column": 82
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Split the parameters into an object",
      "start": 2828,
      "end": 2866,
      "loc": {
        "start": {
          "line": 98,
          "column": 6
        },
        "end": {
          "line": 98,
          "column": 44
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the protocol of the url\n   * @return {String} The string containing the protocol\n   ",
      "start": 3350,
      "end": 3453,
      "loc": {
        "start": {
          "line": 115,
          "column": 2
        },
        "end": {
          "line": 118,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the host and port of the url\n   * @return {String} The string containing the hostname and port\n   ",
      "start": 3513,
      "end": 3630,
      "loc": {
        "start": {
          "line": 122,
          "column": 2
        },
        "end": {
          "line": 125,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the path of the url\n   * @return {String} The string containing the path\n   ",
      "start": 3682,
      "end": 3777,
      "loc": {
        "start": {
          "line": 129,
          "column": 2
        },
        "end": {
          "line": 132,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the parameters of the url\n   * @return {Object} The query string parameters of the url\n   ",
      "start": 3829,
      "end": 3938,
      "loc": {
        "start": {
          "line": 136,
          "column": 2
        },
        "end": {
          "line": 139,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the hash of the url\n   * @return {String} The hash of the url\n   ",
      "start": 4002,
      "end": 4086,
      "loc": {
        "start": {
          "line": 143,
          "column": 2
        },
        "end": {
          "line": 146,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the username from the url\n   * @return {String} The username from the url\n   ",
      "start": 4138,
      "end": 4234,
      "loc": {
        "start": {
          "line": 150,
          "column": 2
        },
        "end": {
          "line": 153,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the password from the url\n   * @return {String} The password from the url\n   ",
      "start": 4294,
      "end": 4390,
      "loc": {
        "start": {
          "line": 157,
          "column": 2
        },
        "end": {
          "line": 160,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns all the parts of the url\n   * @return {Object} The object containing all the url parts\n   ",
      "start": 4450,
      "end": 4559,
      "loc": {
        "start": {
          "line": 164,
          "column": 2
        },
        "end": {
          "line": 167,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Return the url\n   * @return {String} The provided url\n   ",
      "start": 4608,
      "end": 4676,
      "loc": {
        "start": {
          "line": 172,
          "column": 2
        },
        "end": {
          "line": 175,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Set the url string\n   * @param {String} url The url string\n   * @return {Url} The instance of the Url class\n   ",
      "start": 4722,
      "end": 4844,
      "loc": {
        "start": {
          "line": 180,
          "column": 2
        },
        "end": {
          "line": 184,
          "column": 5
        }
      }
    }
  ],
  "tokens": [
    {
      "type": "CommentBlock",
      "value": " globals window, document ",
      "start": 0,
      "end": 30,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "use strict",
      "start": 32,
      "end": 44,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 46,
      "end": 52,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 53,
      "end": 54,
      "loc": {
        "start": {
          "line": 5,
          "column": 7
        },
        "end": {
          "line": 5,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loop",
      "start": 55,
      "end": 59,
      "loc": {
        "start": {
          "line": 5,
          "column": 9
        },
        "end": {
          "line": 5,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 60,
      "end": 61,
      "loc": {
        "start": {
          "line": 5,
          "column": 14
        },
        "end": {
          "line": 5,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 62,
      "end": 66,
      "loc": {
        "start": {
          "line": 5,
          "column": 16
        },
        "end": {
          "line": 5,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./loop",
      "start": 67,
      "end": 75,
      "loc": {
        "start": {
          "line": 5,
          "column": 21
        },
        "end": {
          "line": 5,
          "column": 29
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n * This class is responsible for parsing and matching urls\n ",
      "start": 77,
      "end": 143,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "export",
        "keyword": "export",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "export",
      "start": 144,
      "end": 150,
      "loc": {
        "start": {
          "line": 10,
          "column": 0
        },
        "end": {
          "line": 10,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "class",
        "keyword": "class",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "class",
      "start": 151,
      "end": 156,
      "loc": {
        "start": {
          "line": 10,
          "column": 7
        },
        "end": {
          "line": 10,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Url",
      "start": 157,
      "end": 160,
      "loc": {
        "start": {
          "line": 10,
          "column": 13
        },
        "end": {
          "line": 10,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 161,
      "end": 162,
      "loc": {
        "start": {
          "line": 10,
          "column": 17
        },
        "end": {
          "line": 10,
          "column": 18
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Creates an instance of Url\n   * @param {String} url A url string. If no url is provided window.location.href is used\n   ",
      "start": 165,
      "end": 296,
      "loc": {
        "start": {
          "line": 11,
          "column": 2
        },
        "end": {
          "line": 14,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constructor",
      "start": 299,
      "end": 310,
      "loc": {
        "start": {
          "line": 15,
          "column": 2
        },
        "end": {
          "line": 15,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 311,
      "end": 312,
      "loc": {
        "start": {
          "line": 15,
          "column": 14
        },
        "end": {
          "line": 15,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 313,
      "end": 316,
      "loc": {
        "start": {
          "line": 15,
          "column": 16
        },
        "end": {
          "line": 15,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 317,
      "end": 318,
      "loc": {
        "start": {
          "line": 15,
          "column": 20
        },
        "end": {
          "line": 15,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 319,
      "end": 320,
      "loc": {
        "start": {
          "line": 15,
          "column": 22
        },
        "end": {
          "line": 15,
          "column": 23
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains regular expressions used for splitting the url\n     * @type {Object}\n     * @private\n     ",
      "start": 325,
      "end": 437,
      "loc": {
        "start": {
          "line": 16,
          "column": 4
        },
        "end": {
          "line": 20,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 442,
      "end": 446,
      "loc": {
        "start": {
          "line": 21,
          "column": 4
        },
        "end": {
          "line": 21,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 446,
      "end": 447,
      "loc": {
        "start": {
          "line": 21,
          "column": 8
        },
        "end": {
          "line": 21,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 447,
      "end": 455,
      "loc": {
        "start": {
          "line": 21,
          "column": 9
        },
        "end": {
          "line": 21,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 456,
      "end": 457,
      "loc": {
        "start": {
          "line": 21,
          "column": 18
        },
        "end": {
          "line": 21,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 458,
      "end": 459,
      "loc": {
        "start": {
          "line": 21,
          "column": 20
        },
        "end": {
          "line": 21,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 466,
      "end": 474,
      "loc": {
        "start": {
          "line": 22,
          "column": 6
        },
        "end": {
          "line": 22,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 474,
      "end": 475,
      "loc": {
        "start": {
          "line": 22,
          "column": 14
        },
        "end": {
          "line": 22,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(?<protocol>[^:]+):\\/\\/",
      "start": 476,
      "end": 503,
      "loc": {
        "start": {
          "line": 22,
          "column": 16
        },
        "end": {
          "line": 22,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 503,
      "end": 504,
      "loc": {
        "start": {
          "line": 22,
          "column": 43
        },
        "end": {
          "line": 22,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 511,
      "end": 515,
      "loc": {
        "start": {
          "line": 23,
          "column": 6
        },
        "end": {
          "line": 23,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 515,
      "end": 516,
      "loc": {
        "start": {
          "line": 23,
          "column": 10
        },
        "end": {
          "line": 23,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(?<host>[^\\/\\?#]+)",
      "start": 517,
      "end": 539,
      "loc": {
        "start": {
          "line": 23,
          "column": 12
        },
        "end": {
          "line": 23,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 539,
      "end": 540,
      "loc": {
        "start": {
          "line": 23,
          "column": 34
        },
        "end": {
          "line": 23,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 547,
      "end": 551,
      "loc": {
        "start": {
          "line": 24,
          "column": 6
        },
        "end": {
          "line": 24,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 551,
      "end": 552,
      "loc": {
        "start": {
          "line": 24,
          "column": 10
        },
        "end": {
          "line": 24,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(?<path>\\/[^\\?#]*)?",
      "start": 553,
      "end": 576,
      "loc": {
        "start": {
          "line": 24,
          "column": 12
        },
        "end": {
          "line": 24,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 576,
      "end": 577,
      "loc": {
        "start": {
          "line": 24,
          "column": 35
        },
        "end": {
          "line": 24,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 584,
      "end": 594,
      "loc": {
        "start": {
          "line": 25,
          "column": 6
        },
        "end": {
          "line": 25,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 594,
      "end": 595,
      "loc": {
        "start": {
          "line": 25,
          "column": 16
        },
        "end": {
          "line": 25,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(?<parameters>\\?[^#]*)?",
      "start": 596,
      "end": 622,
      "loc": {
        "start": {
          "line": 25,
          "column": 18
        },
        "end": {
          "line": 25,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 622,
      "end": 623,
      "loc": {
        "start": {
          "line": 25,
          "column": 44
        },
        "end": {
          "line": 25,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 630,
      "end": 634,
      "loc": {
        "start": {
          "line": 26,
          "column": 6
        },
        "end": {
          "line": 26,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 634,
      "end": 635,
      "loc": {
        "start": {
          "line": 26,
          "column": 10
        },
        "end": {
          "line": 26,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "(?<hash>#.*)?",
      "start": 636,
      "end": 651,
      "loc": {
        "start": {
          "line": 26,
          "column": 12
        },
        "end": {
          "line": 26,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 656,
      "end": 657,
      "loc": {
        "start": {
          "line": 27,
          "column": 4
        },
        "end": {
          "line": 27,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains the url provided\n     * @type {String}\n     * @private\n     ",
      "start": 663,
      "end": 745,
      "loc": {
        "start": {
          "line": 29,
          "column": 4
        },
        "end": {
          "line": 33,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 750,
      "end": 754,
      "loc": {
        "start": {
          "line": 34,
          "column": 4
        },
        "end": {
          "line": 34,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 754,
      "end": 755,
      "loc": {
        "start": {
          "line": 34,
          "column": 8
        },
        "end": {
          "line": 34,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__url",
      "start": 755,
      "end": 760,
      "loc": {
        "start": {
          "line": 34,
          "column": 9
        },
        "end": {
          "line": 34,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 761,
      "end": 762,
      "loc": {
        "start": {
          "line": 34,
          "column": 15
        },
        "end": {
          "line": 34,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 763,
      "end": 765,
      "loc": {
        "start": {
          "line": 34,
          "column": 17
        },
        "end": {
          "line": 34,
          "column": 19
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n     * Contains all the parts of the url\n     * @type {Object}\n     * @private\n     ",
      "start": 771,
      "end": 861,
      "loc": {
        "start": {
          "line": 36,
          "column": 4
        },
        "end": {
          "line": 40,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 866,
      "end": 870,
      "loc": {
        "start": {
          "line": 41,
          "column": 4
        },
        "end": {
          "line": 41,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 870,
      "end": 871,
      "loc": {
        "start": {
          "line": 41,
          "column": 8
        },
        "end": {
          "line": 41,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 871,
      "end": 878,
      "loc": {
        "start": {
          "line": 41,
          "column": 9
        },
        "end": {
          "line": 41,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 879,
      "end": 880,
      "loc": {
        "start": {
          "line": 41,
          "column": 17
        },
        "end": {
          "line": 41,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 881,
      "end": 882,
      "loc": {
        "start": {
          "line": 41,
          "column": 19
        },
        "end": {
          "line": 41,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 889,
      "end": 897,
      "loc": {
        "start": {
          "line": 42,
          "column": 6
        },
        "end": {
          "line": 42,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 897,
      "end": 898,
      "loc": {
        "start": {
          "line": 42,
          "column": 14
        },
        "end": {
          "line": 42,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 899,
      "end": 903,
      "loc": {
        "start": {
          "line": 42,
          "column": 16
        },
        "end": {
          "line": 42,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 903,
      "end": 904,
      "loc": {
        "start": {
          "line": 42,
          "column": 20
        },
        "end": {
          "line": 42,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 911,
      "end": 915,
      "loc": {
        "start": {
          "line": 43,
          "column": 6
        },
        "end": {
          "line": 43,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 915,
      "end": 916,
      "loc": {
        "start": {
          "line": 43,
          "column": 10
        },
        "end": {
          "line": 43,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 917,
      "end": 921,
      "loc": {
        "start": {
          "line": 43,
          "column": 12
        },
        "end": {
          "line": 43,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 921,
      "end": 922,
      "loc": {
        "start": {
          "line": 43,
          "column": 16
        },
        "end": {
          "line": 43,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 929,
      "end": 933,
      "loc": {
        "start": {
          "line": 44,
          "column": 6
        },
        "end": {
          "line": 44,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 933,
      "end": 934,
      "loc": {
        "start": {
          "line": 44,
          "column": 10
        },
        "end": {
          "line": 44,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 935,
      "end": 939,
      "loc": {
        "start": {
          "line": 44,
          "column": 12
        },
        "end": {
          "line": 44,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 939,
      "end": 940,
      "loc": {
        "start": {
          "line": 44,
          "column": 16
        },
        "end": {
          "line": 44,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 947,
      "end": 957,
      "loc": {
        "start": {
          "line": 45,
          "column": 6
        },
        "end": {
          "line": 45,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 957,
      "end": 958,
      "loc": {
        "start": {
          "line": 45,
          "column": 16
        },
        "end": {
          "line": 45,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 959,
      "end": 963,
      "loc": {
        "start": {
          "line": 45,
          "column": 18
        },
        "end": {
          "line": 45,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 963,
      "end": 964,
      "loc": {
        "start": {
          "line": 45,
          "column": 22
        },
        "end": {
          "line": 45,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 971,
      "end": 975,
      "loc": {
        "start": {
          "line": 46,
          "column": 6
        },
        "end": {
          "line": 46,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 975,
      "end": 976,
      "loc": {
        "start": {
          "line": 46,
          "column": 10
        },
        "end": {
          "line": 46,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 977,
      "end": 981,
      "loc": {
        "start": {
          "line": 46,
          "column": 12
        },
        "end": {
          "line": 46,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 981,
      "end": 982,
      "loc": {
        "start": {
          "line": 46,
          "column": 16
        },
        "end": {
          "line": 46,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "username",
      "start": 989,
      "end": 997,
      "loc": {
        "start": {
          "line": 47,
          "column": 6
        },
        "end": {
          "line": 47,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 997,
      "end": 998,
      "loc": {
        "start": {
          "line": 47,
          "column": 14
        },
        "end": {
          "line": 47,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 999,
      "end": 1003,
      "loc": {
        "start": {
          "line": 47,
          "column": 16
        },
        "end": {
          "line": 47,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1003,
      "end": 1004,
      "loc": {
        "start": {
          "line": 47,
          "column": 20
        },
        "end": {
          "line": 47,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "password",
      "start": 1011,
      "end": 1019,
      "loc": {
        "start": {
          "line": 48,
          "column": 6
        },
        "end": {
          "line": 48,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1019,
      "end": 1020,
      "loc": {
        "start": {
          "line": 48,
          "column": 14
        },
        "end": {
          "line": 48,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 1021,
      "end": 1025,
      "loc": {
        "start": {
          "line": 48,
          "column": 16
        },
        "end": {
          "line": 48,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1030,
      "end": 1031,
      "loc": {
        "start": {
          "line": 49,
          "column": 4
        },
        "end": {
          "line": 49,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1037,
      "end": 1041,
      "loc": {
        "start": {
          "line": 51,
          "column": 4
        },
        "end": {
          "line": 51,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1041,
      "end": 1042,
      "loc": {
        "start": {
          "line": 51,
          "column": 8
        },
        "end": {
          "line": 51,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "set",
      "start": 1042,
      "end": 1045,
      "loc": {
        "start": {
          "line": 51,
          "column": 9
        },
        "end": {
          "line": 51,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1045,
      "end": 1046,
      "loc": {
        "start": {
          "line": 51,
          "column": 12
        },
        "end": {
          "line": 51,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 1047,
      "end": 1050,
      "loc": {
        "start": {
          "line": 51,
          "column": 14
        },
        "end": {
          "line": 51,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1051,
      "end": 1052,
      "loc": {
        "start": {
          "line": 51,
          "column": 18
        },
        "end": {
          "line": 51,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1055,
      "end": 1056,
      "loc": {
        "start": {
          "line": 52,
          "column": 2
        },
        "end": {
          "line": 52,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Parse a url to the correct format\n   * @param {String} url The url string to be parsed\n   * @return {String} The parsed version of the url\n   * @private\n   ",
      "start": 1060,
      "end": 1227,
      "loc": {
        "start": {
          "line": 54,
          "column": 2
        },
        "end": {
          "line": 59,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parseUrl",
      "start": 1230,
      "end": 1240,
      "loc": {
        "start": {
          "line": 60,
          "column": 2
        },
        "end": {
          "line": 60,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1241,
      "end": 1242,
      "loc": {
        "start": {
          "line": 60,
          "column": 13
        },
        "end": {
          "line": 60,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 1243,
      "end": 1246,
      "loc": {
        "start": {
          "line": 60,
          "column": 15
        },
        "end": {
          "line": 60,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1247,
      "end": 1248,
      "loc": {
        "start": {
          "line": 60,
          "column": 19
        },
        "end": {
          "line": 60,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1249,
      "end": 1250,
      "loc": {
        "start": {
          "line": 60,
          "column": 21
        },
        "end": {
          "line": 60,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1255,
      "end": 1258,
      "loc": {
        "start": {
          "line": 61,
          "column": 4
        },
        "end": {
          "line": 61,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "div",
      "start": 1259,
      "end": 1262,
      "loc": {
        "start": {
          "line": 61,
          "column": 8
        },
        "end": {
          "line": 61,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1263,
      "end": 1264,
      "loc": {
        "start": {
          "line": 61,
          "column": 12
        },
        "end": {
          "line": 61,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "document",
      "start": 1265,
      "end": 1273,
      "loc": {
        "start": {
          "line": 61,
          "column": 14
        },
        "end": {
          "line": 61,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1273,
      "end": 1274,
      "loc": {
        "start": {
          "line": 61,
          "column": 22
        },
        "end": {
          "line": 61,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "createElement",
      "start": 1274,
      "end": 1287,
      "loc": {
        "start": {
          "line": 61,
          "column": 23
        },
        "end": {
          "line": 61,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1287,
      "end": 1288,
      "loc": {
        "start": {
          "line": 61,
          "column": 36
        },
        "end": {
          "line": 61,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "div",
      "start": 1289,
      "end": 1294,
      "loc": {
        "start": {
          "line": 61,
          "column": 38
        },
        "end": {
          "line": 61,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1295,
      "end": 1296,
      "loc": {
        "start": {
          "line": 61,
          "column": 44
        },
        "end": {
          "line": 61,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "div",
      "start": 1301,
      "end": 1304,
      "loc": {
        "start": {
          "line": 62,
          "column": 4
        },
        "end": {
          "line": 62,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1304,
      "end": 1305,
      "loc": {
        "start": {
          "line": 62,
          "column": 7
        },
        "end": {
          "line": 62,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "innerHTML",
      "start": 1305,
      "end": 1314,
      "loc": {
        "start": {
          "line": 62,
          "column": 8
        },
        "end": {
          "line": 62,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1315,
      "end": 1316,
      "loc": {
        "start": {
          "line": 62,
          "column": 18
        },
        "end": {
          "line": 62,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "<a></a>",
      "start": 1317,
      "end": 1326,
      "loc": {
        "start": {
          "line": 62,
          "column": 20
        },
        "end": {
          "line": 62,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "div",
      "start": 1331,
      "end": 1334,
      "loc": {
        "start": {
          "line": 63,
          "column": 4
        },
        "end": {
          "line": 63,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1334,
      "end": 1335,
      "loc": {
        "start": {
          "line": 63,
          "column": 7
        },
        "end": {
          "line": 63,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "firstChild",
      "start": 1335,
      "end": 1345,
      "loc": {
        "start": {
          "line": 63,
          "column": 8
        },
        "end": {
          "line": 63,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1345,
      "end": 1346,
      "loc": {
        "start": {
          "line": 63,
          "column": 18
        },
        "end": {
          "line": 63,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "href",
      "start": 1346,
      "end": 1350,
      "loc": {
        "start": {
          "line": 63,
          "column": 19
        },
        "end": {
          "line": 63,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1351,
      "end": 1352,
      "loc": {
        "start": {
          "line": 63,
          "column": 24
        },
        "end": {
          "line": 63,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 1353,
      "end": 1356,
      "loc": {
        "start": {
          "line": 63,
          "column": 26
        },
        "end": {
          "line": 63,
          "column": 29
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Ensures that the href is properly escaped",
      "start": 1357,
      "end": 1401,
      "loc": {
        "start": {
          "line": 63,
          "column": 30
        },
        "end": {
          "line": 63,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 1406,
      "end": 1412,
      "loc": {
        "start": {
          "line": 64,
          "column": 4
        },
        "end": {
          "line": 64,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "div",
      "start": 1413,
      "end": 1416,
      "loc": {
        "start": {
          "line": 64,
          "column": 11
        },
        "end": {
          "line": 64,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1416,
      "end": 1417,
      "loc": {
        "start": {
          "line": 64,
          "column": 14
        },
        "end": {
          "line": 64,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "firstChild",
      "start": 1417,
      "end": 1427,
      "loc": {
        "start": {
          "line": 64,
          "column": 15
        },
        "end": {
          "line": 64,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1427,
      "end": 1428,
      "loc": {
        "start": {
          "line": 64,
          "column": 25
        },
        "end": {
          "line": 64,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "href",
      "start": 1428,
      "end": 1432,
      "loc": {
        "start": {
          "line": 64,
          "column": 26
        },
        "end": {
          "line": 64,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1435,
      "end": 1436,
      "loc": {
        "start": {
          "line": 65,
          "column": 2
        },
        "end": {
          "line": 65,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Split the url into parts based on the url regular expression\n   * @private\n   ",
      "start": 1440,
      "end": 1529,
      "loc": {
        "start": {
          "line": 67,
          "column": 2
        },
        "end": {
          "line": 70,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__split",
      "start": 1532,
      "end": 1539,
      "loc": {
        "start": {
          "line": 71,
          "column": 2
        },
        "end": {
          "line": 71,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1540,
      "end": 1541,
      "loc": {
        "start": {
          "line": 71,
          "column": 10
        },
        "end": {
          "line": 71,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1541,
      "end": 1542,
      "loc": {
        "start": {
          "line": 71,
          "column": 11
        },
        "end": {
          "line": 71,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1543,
      "end": 1544,
      "loc": {
        "start": {
          "line": 71,
          "column": 13
        },
        "end": {
          "line": 71,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1549,
      "end": 1552,
      "loc": {
        "start": {
          "line": 72,
          "column": 4
        },
        "end": {
          "line": 72,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regexp",
      "start": 1553,
      "end": 1559,
      "loc": {
        "start": {
          "line": 72,
          "column": 8
        },
        "end": {
          "line": 72,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1560,
      "end": 1561,
      "loc": {
        "start": {
          "line": 72,
          "column": 15
        },
        "end": {
          "line": 72,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1562,
      "end": 1565,
      "loc": {
        "start": {
          "line": 72,
          "column": 17
        },
        "end": {
          "line": 72,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "RegExp",
      "start": 1566,
      "end": 1572,
      "loc": {
        "start": {
          "line": 72,
          "column": 21
        },
        "end": {
          "line": 72,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1572,
      "end": 1573,
      "loc": {
        "start": {
          "line": 72,
          "column": 27
        },
        "end": {
          "line": 72,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "^",
      "start": 1574,
      "end": 1577,
      "loc": {
        "start": {
          "line": 72,
          "column": 29
        },
        "end": {
          "line": 72,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1578,
      "end": 1579,
      "loc": {
        "start": {
          "line": 72,
          "column": 33
        },
        "end": {
          "line": 72,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1580,
      "end": 1584,
      "loc": {
        "start": {
          "line": 72,
          "column": 35
        },
        "end": {
          "line": 72,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1584,
      "end": 1585,
      "loc": {
        "start": {
          "line": 72,
          "column": 39
        },
        "end": {
          "line": 72,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 1585,
      "end": 1593,
      "loc": {
        "start": {
          "line": 72,
          "column": 40
        },
        "end": {
          "line": 72,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1593,
      "end": 1594,
      "loc": {
        "start": {
          "line": 72,
          "column": 48
        },
        "end": {
          "line": 72,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 1594,
      "end": 1602,
      "loc": {
        "start": {
          "line": 72,
          "column": 49
        },
        "end": {
          "line": 72,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1603,
      "end": 1604,
      "loc": {
        "start": {
          "line": 72,
          "column": 58
        },
        "end": {
          "line": 72,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1605,
      "end": 1609,
      "loc": {
        "start": {
          "line": 72,
          "column": 60
        },
        "end": {
          "line": 72,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1609,
      "end": 1610,
      "loc": {
        "start": {
          "line": 72,
          "column": 64
        },
        "end": {
          "line": 72,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 1610,
      "end": 1618,
      "loc": {
        "start": {
          "line": 72,
          "column": 65
        },
        "end": {
          "line": 72,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1618,
      "end": 1619,
      "loc": {
        "start": {
          "line": 72,
          "column": 73
        },
        "end": {
          "line": 72,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 1619,
      "end": 1623,
      "loc": {
        "start": {
          "line": 72,
          "column": 74
        },
        "end": {
          "line": 72,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1624,
      "end": 1625,
      "loc": {
        "start": {
          "line": 72,
          "column": 79
        },
        "end": {
          "line": 72,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1626,
      "end": 1630,
      "loc": {
        "start": {
          "line": 72,
          "column": 81
        },
        "end": {
          "line": 72,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1630,
      "end": 1631,
      "loc": {
        "start": {
          "line": 72,
          "column": 85
        },
        "end": {
          "line": 72,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 1631,
      "end": 1639,
      "loc": {
        "start": {
          "line": 72,
          "column": 86
        },
        "end": {
          "line": 72,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1639,
      "end": 1640,
      "loc": {
        "start": {
          "line": 72,
          "column": 94
        },
        "end": {
          "line": 72,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 1640,
      "end": 1644,
      "loc": {
        "start": {
          "line": 72,
          "column": 95
        },
        "end": {
          "line": 72,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1645,
      "end": 1646,
      "loc": {
        "start": {
          "line": 72,
          "column": 100
        },
        "end": {
          "line": 72,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1647,
      "end": 1651,
      "loc": {
        "start": {
          "line": 72,
          "column": 102
        },
        "end": {
          "line": 72,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1651,
      "end": 1652,
      "loc": {
        "start": {
          "line": 72,
          "column": 106
        },
        "end": {
          "line": 72,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 1652,
      "end": 1660,
      "loc": {
        "start": {
          "line": 72,
          "column": 107
        },
        "end": {
          "line": 72,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1660,
      "end": 1661,
      "loc": {
        "start": {
          "line": 72,
          "column": 115
        },
        "end": {
          "line": 72,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 1661,
      "end": 1671,
      "loc": {
        "start": {
          "line": 72,
          "column": 116
        },
        "end": {
          "line": 72,
          "column": 126
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1672,
      "end": 1673,
      "loc": {
        "start": {
          "line": 72,
          "column": 127
        },
        "end": {
          "line": 72,
          "column": 128
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1674,
      "end": 1678,
      "loc": {
        "start": {
          "line": 72,
          "column": 129
        },
        "end": {
          "line": 72,
          "column": 133
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1678,
      "end": 1679,
      "loc": {
        "start": {
          "line": 72,
          "column": 133
        },
        "end": {
          "line": 72,
          "column": 134
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__regexp",
      "start": 1679,
      "end": 1687,
      "loc": {
        "start": {
          "line": 72,
          "column": 134
        },
        "end": {
          "line": 72,
          "column": 142
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1687,
      "end": 1688,
      "loc": {
        "start": {
          "line": 72,
          "column": 142
        },
        "end": {
          "line": 72,
          "column": 143
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 1688,
      "end": 1692,
      "loc": {
        "start": {
          "line": 72,
          "column": 143
        },
        "end": {
          "line": 72,
          "column": 147
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 1693,
      "end": 1694,
      "loc": {
        "start": {
          "line": 72,
          "column": 148
        },
        "end": {
          "line": 72,
          "column": 149
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "$",
      "start": 1695,
      "end": 1698,
      "loc": {
        "start": {
          "line": 72,
          "column": 150
        },
        "end": {
          "line": 72,
          "column": 153
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1698,
      "end": 1699,
      "loc": {
        "start": {
          "line": 72,
          "column": 153
        },
        "end": {
          "line": 72,
          "column": 154
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "i",
      "start": 1700,
      "end": 1703,
      "loc": {
        "start": {
          "line": 72,
          "column": 155
        },
        "end": {
          "line": 72,
          "column": 158
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1704,
      "end": 1705,
      "loc": {
        "start": {
          "line": 72,
          "column": 159
        },
        "end": {
          "line": 72,
          "column": 160
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 1710,
      "end": 1713,
      "loc": {
        "start": {
          "line": 73,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1714,
      "end": 1719,
      "loc": {
        "start": {
          "line": 73,
          "column": 8
        },
        "end": {
          "line": 73,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1720,
      "end": 1721,
      "loc": {
        "start": {
          "line": 73,
          "column": 14
        },
        "end": {
          "line": 73,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1722,
      "end": 1726,
      "loc": {
        "start": {
          "line": 73,
          "column": 16
        },
        "end": {
          "line": 73,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1726,
      "end": 1727,
      "loc": {
        "start": {
          "line": 73,
          "column": 20
        },
        "end": {
          "line": 73,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__url",
      "start": 1727,
      "end": 1732,
      "loc": {
        "start": {
          "line": 73,
          "column": 21
        },
        "end": {
          "line": 73,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1732,
      "end": 1733,
      "loc": {
        "start": {
          "line": 73,
          "column": 26
        },
        "end": {
          "line": 73,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "match",
      "start": 1733,
      "end": 1738,
      "loc": {
        "start": {
          "line": 73,
          "column": 27
        },
        "end": {
          "line": 73,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1738,
      "end": 1739,
      "loc": {
        "start": {
          "line": 73,
          "column": 32
        },
        "end": {
          "line": 73,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "regexp",
      "start": 1740,
      "end": 1746,
      "loc": {
        "start": {
          "line": 73,
          "column": 34
        },
        "end": {
          "line": 73,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1747,
      "end": 1748,
      "loc": {
        "start": {
          "line": 73,
          "column": 41
        },
        "end": {
          "line": 73,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1753,
      "end": 1755,
      "loc": {
        "start": {
          "line": 74,
          "column": 4
        },
        "end": {
          "line": 74,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1756,
      "end": 1757,
      "loc": {
        "start": {
          "line": 74,
          "column": 7
        },
        "end": {
          "line": 74,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1758,
      "end": 1763,
      "loc": {
        "start": {
          "line": 74,
          "column": 9
        },
        "end": {
          "line": 74,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1764,
      "end": 1765,
      "loc": {
        "start": {
          "line": 74,
          "column": 15
        },
        "end": {
          "line": 74,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1766,
      "end": 1767,
      "loc": {
        "start": {
          "line": 74,
          "column": 17
        },
        "end": {
          "line": 74,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1774,
      "end": 1778,
      "loc": {
        "start": {
          "line": 75,
          "column": 6
        },
        "end": {
          "line": 75,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1778,
      "end": 1779,
      "loc": {
        "start": {
          "line": 75,
          "column": 10
        },
        "end": {
          "line": 75,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 1779,
      "end": 1786,
      "loc": {
        "start": {
          "line": 75,
          "column": 11
        },
        "end": {
          "line": 75,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1786,
      "end": 1787,
      "loc": {
        "start": {
          "line": 75,
          "column": 18
        },
        "end": {
          "line": 75,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 1787,
      "end": 1795,
      "loc": {
        "start": {
          "line": 75,
          "column": 19
        },
        "end": {
          "line": 75,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1796,
      "end": 1797,
      "loc": {
        "start": {
          "line": 75,
          "column": 28
        },
        "end": {
          "line": 75,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1798,
      "end": 1803,
      "loc": {
        "start": {
          "line": 75,
          "column": 30
        },
        "end": {
          "line": 75,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1803,
      "end": 1804,
      "loc": {
        "start": {
          "line": 75,
          "column": 35
        },
        "end": {
          "line": 75,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 1804,
      "end": 1810,
      "loc": {
        "start": {
          "line": 75,
          "column": 36
        },
        "end": {
          "line": 75,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1810,
      "end": 1811,
      "loc": {
        "start": {
          "line": 75,
          "column": 42
        },
        "end": {
          "line": 75,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "protocol",
      "start": 1812,
      "end": 1822,
      "loc": {
        "start": {
          "line": 75,
          "column": 44
        },
        "end": {
          "line": 75,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1823,
      "end": 1824,
      "loc": {
        "start": {
          "line": 75,
          "column": 55
        },
        "end": {
          "line": 75,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 1825,
      "end": 1827,
      "loc": {
        "start": {
          "line": 75,
          "column": 57
        },
        "end": {
          "line": 75,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 1828,
      "end": 1832,
      "loc": {
        "start": {
          "line": 75,
          "column": 60
        },
        "end": {
          "line": 75,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1839,
      "end": 1843,
      "loc": {
        "start": {
          "line": 76,
          "column": 6
        },
        "end": {
          "line": 76,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1843,
      "end": 1844,
      "loc": {
        "start": {
          "line": 76,
          "column": 10
        },
        "end": {
          "line": 76,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 1844,
      "end": 1851,
      "loc": {
        "start": {
          "line": 76,
          "column": 11
        },
        "end": {
          "line": 76,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1851,
      "end": 1852,
      "loc": {
        "start": {
          "line": 76,
          "column": 18
        },
        "end": {
          "line": 76,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 1852,
      "end": 1856,
      "loc": {
        "start": {
          "line": 76,
          "column": 19
        },
        "end": {
          "line": 76,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1857,
      "end": 1858,
      "loc": {
        "start": {
          "line": 76,
          "column": 24
        },
        "end": {
          "line": 76,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1859,
      "end": 1864,
      "loc": {
        "start": {
          "line": 76,
          "column": 26
        },
        "end": {
          "line": 76,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1864,
      "end": 1865,
      "loc": {
        "start": {
          "line": 76,
          "column": 31
        },
        "end": {
          "line": 76,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 1865,
      "end": 1871,
      "loc": {
        "start": {
          "line": 76,
          "column": 32
        },
        "end": {
          "line": 76,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1871,
      "end": 1872,
      "loc": {
        "start": {
          "line": 76,
          "column": 38
        },
        "end": {
          "line": 76,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "path",
      "start": 1873,
      "end": 1879,
      "loc": {
        "start": {
          "line": 76,
          "column": 40
        },
        "end": {
          "line": 76,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1880,
      "end": 1881,
      "loc": {
        "start": {
          "line": 76,
          "column": 47
        },
        "end": {
          "line": 76,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 1882,
      "end": 1884,
      "loc": {
        "start": {
          "line": 76,
          "column": 49
        },
        "end": {
          "line": 76,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 1885,
      "end": 1889,
      "loc": {
        "start": {
          "line": 76,
          "column": 52
        },
        "end": {
          "line": 76,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1896,
      "end": 1900,
      "loc": {
        "start": {
          "line": 77,
          "column": 6
        },
        "end": {
          "line": 77,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1900,
      "end": 1901,
      "loc": {
        "start": {
          "line": 77,
          "column": 10
        },
        "end": {
          "line": 77,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 1901,
      "end": 1908,
      "loc": {
        "start": {
          "line": 77,
          "column": 11
        },
        "end": {
          "line": 77,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1908,
      "end": 1909,
      "loc": {
        "start": {
          "line": 77,
          "column": 18
        },
        "end": {
          "line": 77,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 1909,
      "end": 1913,
      "loc": {
        "start": {
          "line": 77,
          "column": 19
        },
        "end": {
          "line": 77,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1914,
      "end": 1915,
      "loc": {
        "start": {
          "line": 77,
          "column": 24
        },
        "end": {
          "line": 77,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1916,
      "end": 1917,
      "loc": {
        "start": {
          "line": 77,
          "column": 26
        },
        "end": {
          "line": 77,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1918,
      "end": 1923,
      "loc": {
        "start": {
          "line": 77,
          "column": 28
        },
        "end": {
          "line": 77,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1923,
      "end": 1924,
      "loc": {
        "start": {
          "line": 77,
          "column": 33
        },
        "end": {
          "line": 77,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 1924,
      "end": 1930,
      "loc": {
        "start": {
          "line": 77,
          "column": 34
        },
        "end": {
          "line": 77,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1930,
      "end": 1931,
      "loc": {
        "start": {
          "line": 77,
          "column": 40
        },
        "end": {
          "line": 77,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hash",
      "start": 1932,
      "end": 1938,
      "loc": {
        "start": {
          "line": 77,
          "column": 42
        },
        "end": {
          "line": 77,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1939,
      "end": 1940,
      "loc": {
        "start": {
          "line": 77,
          "column": 49
        },
        "end": {
          "line": 77,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1941,
      "end": 1942,
      "loc": {
        "start": {
          "line": 77,
          "column": 51
        },
        "end": {
          "line": 77,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1943,
      "end": 1944,
      "loc": {
        "start": {
          "line": 77,
          "column": 53
        },
        "end": {
          "line": 77,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 1945,
      "end": 1950,
      "loc": {
        "start": {
          "line": 77,
          "column": 55
        },
        "end": {
          "line": 77,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1950,
      "end": 1951,
      "loc": {
        "start": {
          "line": 77,
          "column": 60
        },
        "end": {
          "line": 77,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 1951,
      "end": 1957,
      "loc": {
        "start": {
          "line": 77,
          "column": 61
        },
        "end": {
          "line": 77,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1957,
      "end": 1958,
      "loc": {
        "start": {
          "line": 77,
          "column": 67
        },
        "end": {
          "line": 77,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hash",
      "start": 1959,
      "end": 1965,
      "loc": {
        "start": {
          "line": 77,
          "column": 69
        },
        "end": {
          "line": 77,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1966,
      "end": 1967,
      "loc": {
        "start": {
          "line": 77,
          "column": 76
        },
        "end": {
          "line": 77,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1967,
      "end": 1968,
      "loc": {
        "start": {
          "line": 77,
          "column": 77
        },
        "end": {
          "line": 77,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "substring",
      "start": 1968,
      "end": 1977,
      "loc": {
        "start": {
          "line": 77,
          "column": 78
        },
        "end": {
          "line": 77,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1977,
      "end": 1978,
      "loc": {
        "start": {
          "line": 77,
          "column": 87
        },
        "end": {
          "line": 77,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 1979,
      "end": 1980,
      "loc": {
        "start": {
          "line": 77,
          "column": 89
        },
        "end": {
          "line": 77,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1981,
      "end": 1982,
      "loc": {
        "start": {
          "line": 77,
          "column": 91
        },
        "end": {
          "line": 77,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1983,
      "end": 1984,
      "loc": {
        "start": {
          "line": 77,
          "column": 93
        },
        "end": {
          "line": 77,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 1985,
      "end": 1989,
      "loc": {
        "start": {
          "line": 77,
          "column": 95
        },
        "end": {
          "line": 77,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1997,
      "end": 2001,
      "loc": {
        "start": {
          "line": 79,
          "column": 6
        },
        "end": {
          "line": 79,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2001,
      "end": 2002,
      "loc": {
        "start": {
          "line": 79,
          "column": 10
        },
        "end": {
          "line": 79,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2002,
      "end": 2009,
      "loc": {
        "start": {
          "line": 79,
          "column": 11
        },
        "end": {
          "line": 79,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2009,
      "end": 2010,
      "loc": {
        "start": {
          "line": 79,
          "column": 18
        },
        "end": {
          "line": 79,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 2010,
      "end": 2014,
      "loc": {
        "start": {
          "line": 79,
          "column": 19
        },
        "end": {
          "line": 79,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2015,
      "end": 2016,
      "loc": {
        "start": {
          "line": 79,
          "column": 24
        },
        "end": {
          "line": 79,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 2017,
      "end": 2022,
      "loc": {
        "start": {
          "line": 79,
          "column": 26
        },
        "end": {
          "line": 79,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2022,
      "end": 2023,
      "loc": {
        "start": {
          "line": 79,
          "column": 31
        },
        "end": {
          "line": 79,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 2023,
      "end": 2029,
      "loc": {
        "start": {
          "line": 79,
          "column": 32
        },
        "end": {
          "line": 79,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2029,
      "end": 2030,
      "loc": {
        "start": {
          "line": 79,
          "column": 38
        },
        "end": {
          "line": 79,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "host",
      "start": 2031,
      "end": 2037,
      "loc": {
        "start": {
          "line": 79,
          "column": 40
        },
        "end": {
          "line": 79,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2038,
      "end": 2039,
      "loc": {
        "start": {
          "line": 79,
          "column": 47
        },
        "end": {
          "line": 79,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 2040,
      "end": 2042,
      "loc": {
        "start": {
          "line": 79,
          "column": 49
        },
        "end": {
          "line": 79,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2043,
      "end": 2047,
      "loc": {
        "start": {
          "line": 79,
          "column": 52
        },
        "end": {
          "line": 79,
          "column": 56
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Split host, username and password if needed",
      "start": 2054,
      "end": 2100,
      "loc": {
        "start": {
          "line": 80,
          "column": 6
        },
        "end": {
          "line": 80,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2107,
      "end": 2109,
      "loc": {
        "start": {
          "line": 81,
          "column": 6
        },
        "end": {
          "line": 81,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2110,
      "end": 2111,
      "loc": {
        "start": {
          "line": 81,
          "column": 9
        },
        "end": {
          "line": 81,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2112,
      "end": 2116,
      "loc": {
        "start": {
          "line": 81,
          "column": 11
        },
        "end": {
          "line": 81,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2116,
      "end": 2117,
      "loc": {
        "start": {
          "line": 81,
          "column": 15
        },
        "end": {
          "line": 81,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2117,
      "end": 2124,
      "loc": {
        "start": {
          "line": 81,
          "column": 16
        },
        "end": {
          "line": 81,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2124,
      "end": 2125,
      "loc": {
        "start": {
          "line": 81,
          "column": 23
        },
        "end": {
          "line": 81,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 2125,
      "end": 2129,
      "loc": {
        "start": {
          "line": 81,
          "column": 24
        },
        "end": {
          "line": 81,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2130,
      "end": 2131,
      "loc": {
        "start": {
          "line": 81,
          "column": 29
        },
        "end": {
          "line": 81,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2132,
      "end": 2133,
      "loc": {
        "start": {
          "line": 81,
          "column": 31
        },
        "end": {
          "line": 81,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2142,
      "end": 2145,
      "loc": {
        "start": {
          "line": 82,
          "column": 8
        },
        "end": {
          "line": 82,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hostParts",
      "start": 2146,
      "end": 2155,
      "loc": {
        "start": {
          "line": 82,
          "column": 12
        },
        "end": {
          "line": 82,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2156,
      "end": 2157,
      "loc": {
        "start": {
          "line": 82,
          "column": 22
        },
        "end": {
          "line": 82,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2158,
      "end": 2162,
      "loc": {
        "start": {
          "line": 82,
          "column": 24
        },
        "end": {
          "line": 82,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2162,
      "end": 2163,
      "loc": {
        "start": {
          "line": 82,
          "column": 28
        },
        "end": {
          "line": 82,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2163,
      "end": 2170,
      "loc": {
        "start": {
          "line": 82,
          "column": 29
        },
        "end": {
          "line": 82,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2170,
      "end": 2171,
      "loc": {
        "start": {
          "line": 82,
          "column": 36
        },
        "end": {
          "line": 82,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 2171,
      "end": 2175,
      "loc": {
        "start": {
          "line": 82,
          "column": 37
        },
        "end": {
          "line": 82,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2175,
      "end": 2176,
      "loc": {
        "start": {
          "line": 82,
          "column": 41
        },
        "end": {
          "line": 82,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 2176,
      "end": 2181,
      "loc": {
        "start": {
          "line": 82,
          "column": 42
        },
        "end": {
          "line": 82,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2181,
      "end": 2182,
      "loc": {
        "start": {
          "line": 82,
          "column": 47
        },
        "end": {
          "line": 82,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "@",
      "start": 2183,
      "end": 2186,
      "loc": {
        "start": {
          "line": 82,
          "column": 49
        },
        "end": {
          "line": 82,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2187,
      "end": 2188,
      "loc": {
        "start": {
          "line": 82,
          "column": 53
        },
        "end": {
          "line": 82,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2197,
      "end": 2199,
      "loc": {
        "start": {
          "line": 83,
          "column": 8
        },
        "end": {
          "line": 83,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2200,
      "end": 2201,
      "loc": {
        "start": {
          "line": 83,
          "column": 11
        },
        "end": {
          "line": 83,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hostParts",
      "start": 2202,
      "end": 2211,
      "loc": {
        "start": {
          "line": 83,
          "column": 13
        },
        "end": {
          "line": 83,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2211,
      "end": 2212,
      "loc": {
        "start": {
          "line": 83,
          "column": 22
        },
        "end": {
          "line": 83,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2213,
      "end": 2214,
      "loc": {
        "start": {
          "line": 83,
          "column": 24
        },
        "end": {
          "line": 83,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2215,
      "end": 2216,
      "loc": {
        "start": {
          "line": 83,
          "column": 26
        },
        "end": {
          "line": 83,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2217,
      "end": 2218,
      "loc": {
        "start": {
          "line": 83,
          "column": 28
        },
        "end": {
          "line": 83,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2219,
      "end": 2220,
      "loc": {
        "start": {
          "line": 83,
          "column": 30
        },
        "end": {
          "line": 83,
          "column": 31
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " We have a username and password so we need to update those parts",
      "start": 2231,
      "end": 2298,
      "loc": {
        "start": {
          "line": 84,
          "column": 10
        },
        "end": {
          "line": 84,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2309,
      "end": 2312,
      "loc": {
        "start": {
          "line": 85,
          "column": 10
        },
        "end": {
          "line": 85,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "authentication",
      "start": 2313,
      "end": 2327,
      "loc": {
        "start": {
          "line": 85,
          "column": 14
        },
        "end": {
          "line": 85,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2328,
      "end": 2329,
      "loc": {
        "start": {
          "line": 85,
          "column": 29
        },
        "end": {
          "line": 85,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hostParts",
      "start": 2330,
      "end": 2339,
      "loc": {
        "start": {
          "line": 85,
          "column": 31
        },
        "end": {
          "line": 85,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2339,
      "end": 2340,
      "loc": {
        "start": {
          "line": 85,
          "column": 40
        },
        "end": {
          "line": 85,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 2341,
      "end": 2342,
      "loc": {
        "start": {
          "line": 85,
          "column": 42
        },
        "end": {
          "line": 85,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2343,
      "end": 2344,
      "loc": {
        "start": {
          "line": 85,
          "column": 44
        },
        "end": {
          "line": 85,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2344,
      "end": 2345,
      "loc": {
        "start": {
          "line": 85,
          "column": 45
        },
        "end": {
          "line": 85,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 2345,
      "end": 2350,
      "loc": {
        "start": {
          "line": 85,
          "column": 46
        },
        "end": {
          "line": 85,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2350,
      "end": 2351,
      "loc": {
        "start": {
          "line": 85,
          "column": 51
        },
        "end": {
          "line": 85,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ":",
      "start": 2352,
      "end": 2355,
      "loc": {
        "start": {
          "line": 85,
          "column": 53
        },
        "end": {
          "line": 85,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2356,
      "end": 2357,
      "loc": {
        "start": {
          "line": 85,
          "column": 57
        },
        "end": {
          "line": 85,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2368,
      "end": 2372,
      "loc": {
        "start": {
          "line": 86,
          "column": 10
        },
        "end": {
          "line": 86,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2372,
      "end": 2373,
      "loc": {
        "start": {
          "line": 86,
          "column": 14
        },
        "end": {
          "line": 86,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2373,
      "end": 2380,
      "loc": {
        "start": {
          "line": 86,
          "column": 15
        },
        "end": {
          "line": 86,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2380,
      "end": 2381,
      "loc": {
        "start": {
          "line": 86,
          "column": 22
        },
        "end": {
          "line": 86,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "username",
      "start": 2381,
      "end": 2389,
      "loc": {
        "start": {
          "line": 86,
          "column": 23
        },
        "end": {
          "line": 86,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2390,
      "end": 2391,
      "loc": {
        "start": {
          "line": 86,
          "column": 32
        },
        "end": {
          "line": 86,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "authentication",
      "start": 2392,
      "end": 2406,
      "loc": {
        "start": {
          "line": 86,
          "column": 34
        },
        "end": {
          "line": 86,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2406,
      "end": 2407,
      "loc": {
        "start": {
          "line": 86,
          "column": 48
        },
        "end": {
          "line": 86,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 2408,
      "end": 2409,
      "loc": {
        "start": {
          "line": 86,
          "column": 50
        },
        "end": {
          "line": 86,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2410,
      "end": 2411,
      "loc": {
        "start": {
          "line": 86,
          "column": 52
        },
        "end": {
          "line": 86,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2422,
      "end": 2426,
      "loc": {
        "start": {
          "line": 87,
          "column": 10
        },
        "end": {
          "line": 87,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2426,
      "end": 2427,
      "loc": {
        "start": {
          "line": 87,
          "column": 14
        },
        "end": {
          "line": 87,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2427,
      "end": 2434,
      "loc": {
        "start": {
          "line": 87,
          "column": 15
        },
        "end": {
          "line": 87,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2434,
      "end": 2435,
      "loc": {
        "start": {
          "line": 87,
          "column": 22
        },
        "end": {
          "line": 87,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "password",
      "start": 2435,
      "end": 2443,
      "loc": {
        "start": {
          "line": 87,
          "column": 23
        },
        "end": {
          "line": 87,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2444,
      "end": 2445,
      "loc": {
        "start": {
          "line": 87,
          "column": 32
        },
        "end": {
          "line": 87,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "authentication",
      "start": 2446,
      "end": 2460,
      "loc": {
        "start": {
          "line": 87,
          "column": 34
        },
        "end": {
          "line": 87,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2460,
      "end": 2461,
      "loc": {
        "start": {
          "line": 87,
          "column": 48
        },
        "end": {
          "line": 87,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2462,
      "end": 2463,
      "loc": {
        "start": {
          "line": 87,
          "column": 50
        },
        "end": {
          "line": 87,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2464,
      "end": 2465,
      "loc": {
        "start": {
          "line": 87,
          "column": 52
        },
        "end": {
          "line": 87,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2476,
      "end": 2480,
      "loc": {
        "start": {
          "line": 88,
          "column": 10
        },
        "end": {
          "line": 88,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2480,
      "end": 2481,
      "loc": {
        "start": {
          "line": 88,
          "column": 14
        },
        "end": {
          "line": 88,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2481,
      "end": 2488,
      "loc": {
        "start": {
          "line": 88,
          "column": 15
        },
        "end": {
          "line": 88,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2488,
      "end": 2489,
      "loc": {
        "start": {
          "line": 88,
          "column": 22
        },
        "end": {
          "line": 88,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 2489,
      "end": 2493,
      "loc": {
        "start": {
          "line": 88,
          "column": 23
        },
        "end": {
          "line": 88,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2494,
      "end": 2495,
      "loc": {
        "start": {
          "line": 88,
          "column": 28
        },
        "end": {
          "line": 88,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hostParts",
      "start": 2496,
      "end": 2505,
      "loc": {
        "start": {
          "line": 88,
          "column": 30
        },
        "end": {
          "line": 88,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2505,
      "end": 2506,
      "loc": {
        "start": {
          "line": 88,
          "column": 39
        },
        "end": {
          "line": 88,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2507,
      "end": 2508,
      "loc": {
        "start": {
          "line": 88,
          "column": 41
        },
        "end": {
          "line": 88,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2509,
      "end": 2510,
      "loc": {
        "start": {
          "line": 88,
          "column": 43
        },
        "end": {
          "line": 88,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2519,
      "end": 2520,
      "loc": {
        "start": {
          "line": 89,
          "column": 8
        },
        "end": {
          "line": 89,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 2521,
      "end": 2525,
      "loc": {
        "start": {
          "line": 89,
          "column": 10
        },
        "end": {
          "line": 89,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2526,
      "end": 2527,
      "loc": {
        "start": {
          "line": 89,
          "column": 15
        },
        "end": {
          "line": 89,
          "column": 16
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " We dont have a username and password so we need to update those parts",
      "start": 2538,
      "end": 2610,
      "loc": {
        "start": {
          "line": 90,
          "column": 10
        },
        "end": {
          "line": 90,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2621,
      "end": 2625,
      "loc": {
        "start": {
          "line": 91,
          "column": 10
        },
        "end": {
          "line": 91,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2625,
      "end": 2626,
      "loc": {
        "start": {
          "line": 91,
          "column": 14
        },
        "end": {
          "line": 91,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2626,
      "end": 2633,
      "loc": {
        "start": {
          "line": 91,
          "column": 15
        },
        "end": {
          "line": 91,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2633,
      "end": 2634,
      "loc": {
        "start": {
          "line": 91,
          "column": 22
        },
        "end": {
          "line": 91,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "username",
      "start": 2634,
      "end": 2642,
      "loc": {
        "start": {
          "line": 91,
          "column": 23
        },
        "end": {
          "line": 91,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2643,
      "end": 2644,
      "loc": {
        "start": {
          "line": 91,
          "column": 32
        },
        "end": {
          "line": 91,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2645,
      "end": 2649,
      "loc": {
        "start": {
          "line": 91,
          "column": 34
        },
        "end": {
          "line": 91,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2660,
      "end": 2664,
      "loc": {
        "start": {
          "line": 92,
          "column": 10
        },
        "end": {
          "line": 92,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2664,
      "end": 2665,
      "loc": {
        "start": {
          "line": 92,
          "column": 14
        },
        "end": {
          "line": 92,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2665,
      "end": 2672,
      "loc": {
        "start": {
          "line": 92,
          "column": 15
        },
        "end": {
          "line": 92,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2672,
      "end": 2673,
      "loc": {
        "start": {
          "line": 92,
          "column": 22
        },
        "end": {
          "line": 92,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "password",
      "start": 2673,
      "end": 2681,
      "loc": {
        "start": {
          "line": 92,
          "column": 23
        },
        "end": {
          "line": 92,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2682,
      "end": 2683,
      "loc": {
        "start": {
          "line": 92,
          "column": 32
        },
        "end": {
          "line": 92,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2684,
      "end": 2688,
      "loc": {
        "start": {
          "line": 92,
          "column": 34
        },
        "end": {
          "line": 92,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2699,
      "end": 2703,
      "loc": {
        "start": {
          "line": 93,
          "column": 10
        },
        "end": {
          "line": 93,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2703,
      "end": 2704,
      "loc": {
        "start": {
          "line": 93,
          "column": 14
        },
        "end": {
          "line": 93,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2704,
      "end": 2711,
      "loc": {
        "start": {
          "line": 93,
          "column": 15
        },
        "end": {
          "line": 93,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2711,
      "end": 2712,
      "loc": {
        "start": {
          "line": 93,
          "column": 22
        },
        "end": {
          "line": 93,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 2712,
      "end": 2716,
      "loc": {
        "start": {
          "line": 93,
          "column": 23
        },
        "end": {
          "line": 93,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2717,
      "end": 2718,
      "loc": {
        "start": {
          "line": 93,
          "column": 28
        },
        "end": {
          "line": 93,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hostParts",
      "start": 2719,
      "end": 2728,
      "loc": {
        "start": {
          "line": 93,
          "column": 30
        },
        "end": {
          "line": 93,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2728,
      "end": 2729,
      "loc": {
        "start": {
          "line": 93,
          "column": 39
        },
        "end": {
          "line": 93,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 2730,
      "end": 2731,
      "loc": {
        "start": {
          "line": 93,
          "column": 41
        },
        "end": {
          "line": 93,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2732,
      "end": 2733,
      "loc": {
        "start": {
          "line": 93,
          "column": 43
        },
        "end": {
          "line": 93,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2742,
      "end": 2743,
      "loc": {
        "start": {
          "line": 94,
          "column": 8
        },
        "end": {
          "line": 94,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2750,
      "end": 2751,
      "loc": {
        "start": {
          "line": 95,
          "column": 6
        },
        "end": {
          "line": 95,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2759,
      "end": 2763,
      "loc": {
        "start": {
          "line": 97,
          "column": 6
        },
        "end": {
          "line": 97,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2763,
      "end": 2764,
      "loc": {
        "start": {
          "line": 97,
          "column": 10
        },
        "end": {
          "line": 97,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2764,
      "end": 2771,
      "loc": {
        "start": {
          "line": 97,
          "column": 11
        },
        "end": {
          "line": 97,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2771,
      "end": 2772,
      "loc": {
        "start": {
          "line": 97,
          "column": 18
        },
        "end": {
          "line": 97,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 2772,
      "end": 2782,
      "loc": {
        "start": {
          "line": 97,
          "column": 19
        },
        "end": {
          "line": 97,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2783,
      "end": 2784,
      "loc": {
        "start": {
          "line": 97,
          "column": 30
        },
        "end": {
          "line": 97,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 2785,
      "end": 2790,
      "loc": {
        "start": {
          "line": 97,
          "column": 32
        },
        "end": {
          "line": 97,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2790,
      "end": 2791,
      "loc": {
        "start": {
          "line": 97,
          "column": 37
        },
        "end": {
          "line": 97,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 2791,
      "end": 2797,
      "loc": {
        "start": {
          "line": 97,
          "column": 38
        },
        "end": {
          "line": 97,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2797,
      "end": 2798,
      "loc": {
        "start": {
          "line": 97,
          "column": 44
        },
        "end": {
          "line": 97,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "parameters",
      "start": 2799,
      "end": 2811,
      "loc": {
        "start": {
          "line": 97,
          "column": 46
        },
        "end": {
          "line": 97,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2812,
      "end": 2813,
      "loc": {
        "start": {
          "line": 97,
          "column": 59
        },
        "end": {
          "line": 97,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 2814,
      "end": 2816,
      "loc": {
        "start": {
          "line": 97,
          "column": 61
        },
        "end": {
          "line": 97,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2817,
      "end": 2821,
      "loc": {
        "start": {
          "line": 97,
          "column": 64
        },
        "end": {
          "line": 97,
          "column": 68
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Split the parameters into an object",
      "start": 2828,
      "end": 2866,
      "loc": {
        "start": {
          "line": 98,
          "column": 6
        },
        "end": {
          "line": 98,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 2873,
      "end": 2875,
      "loc": {
        "start": {
          "line": 99,
          "column": 6
        },
        "end": {
          "line": 99,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2876,
      "end": 2877,
      "loc": {
        "start": {
          "line": 99,
          "column": 9
        },
        "end": {
          "line": 99,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2878,
      "end": 2882,
      "loc": {
        "start": {
          "line": 99,
          "column": 11
        },
        "end": {
          "line": 99,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2882,
      "end": 2883,
      "loc": {
        "start": {
          "line": 99,
          "column": 15
        },
        "end": {
          "line": 99,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2883,
      "end": 2890,
      "loc": {
        "start": {
          "line": 99,
          "column": 16
        },
        "end": {
          "line": 99,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2890,
      "end": 2891,
      "loc": {
        "start": {
          "line": 99,
          "column": 23
        },
        "end": {
          "line": 99,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 2891,
      "end": 2901,
      "loc": {
        "start": {
          "line": 99,
          "column": 24
        },
        "end": {
          "line": 99,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2902,
      "end": 2903,
      "loc": {
        "start": {
          "line": 99,
          "column": 35
        },
        "end": {
          "line": 99,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2904,
      "end": 2905,
      "loc": {
        "start": {
          "line": 99,
          "column": 37
        },
        "end": {
          "line": 99,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2914,
      "end": 2917,
      "loc": {
        "start": {
          "line": 100,
          "column": 8
        },
        "end": {
          "line": 100,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 2918,
      "end": 2928,
      "loc": {
        "start": {
          "line": 100,
          "column": 12
        },
        "end": {
          "line": 100,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2929,
      "end": 2930,
      "loc": {
        "start": {
          "line": 100,
          "column": 23
        },
        "end": {
          "line": 100,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2931,
      "end": 2932,
      "loc": {
        "start": {
          "line": 100,
          "column": 25
        },
        "end": {
          "line": 100,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2932,
      "end": 2933,
      "loc": {
        "start": {
          "line": 100,
          "column": 26
        },
        "end": {
          "line": 100,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 2942,
      "end": 2945,
      "loc": {
        "start": {
          "line": 101,
          "column": 8
        },
        "end": {
          "line": 101,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 2946,
      "end": 2952,
      "loc": {
        "start": {
          "line": 101,
          "column": 12
        },
        "end": {
          "line": 101,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2953,
      "end": 2954,
      "loc": {
        "start": {
          "line": 101,
          "column": 19
        },
        "end": {
          "line": 101,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2955,
      "end": 2959,
      "loc": {
        "start": {
          "line": 101,
          "column": 21
        },
        "end": {
          "line": 101,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2959,
      "end": 2960,
      "loc": {
        "start": {
          "line": 101,
          "column": 25
        },
        "end": {
          "line": 101,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 2960,
      "end": 2967,
      "loc": {
        "start": {
          "line": 101,
          "column": 26
        },
        "end": {
          "line": 101,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2967,
      "end": 2968,
      "loc": {
        "start": {
          "line": 101,
          "column": 33
        },
        "end": {
          "line": 101,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 2968,
      "end": 2978,
      "loc": {
        "start": {
          "line": 101,
          "column": 34
        },
        "end": {
          "line": 101,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2978,
      "end": 2979,
      "loc": {
        "start": {
          "line": 101,
          "column": 44
        },
        "end": {
          "line": 101,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 2979,
      "end": 2984,
      "loc": {
        "start": {
          "line": 101,
          "column": 45
        },
        "end": {
          "line": 101,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2984,
      "end": 2985,
      "loc": {
        "start": {
          "line": 101,
          "column": 50
        },
        "end": {
          "line": 101,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "?",
      "start": 2986,
      "end": 2989,
      "loc": {
        "start": {
          "line": 101,
          "column": 52
        },
        "end": {
          "line": 101,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2990,
      "end": 2991,
      "loc": {
        "start": {
          "line": 101,
          "column": 56
        },
        "end": {
          "line": 101,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2991,
      "end": 2992,
      "loc": {
        "start": {
          "line": 101,
          "column": 57
        },
        "end": {
          "line": 101,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 2993,
      "end": 2994,
      "loc": {
        "start": {
          "line": 101,
          "column": 59
        },
        "end": {
          "line": 101,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2995,
      "end": 2996,
      "loc": {
        "start": {
          "line": 101,
          "column": 61
        },
        "end": {
          "line": 101,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2996,
      "end": 2997,
      "loc": {
        "start": {
          "line": 101,
          "column": 62
        },
        "end": {
          "line": 101,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 2997,
      "end": 3002,
      "loc": {
        "start": {
          "line": 101,
          "column": 63
        },
        "end": {
          "line": 101,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3002,
      "end": 3003,
      "loc": {
        "start": {
          "line": 101,
          "column": 68
        },
        "end": {
          "line": 101,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "&",
      "start": 3004,
      "end": 3007,
      "loc": {
        "start": {
          "line": 101,
          "column": 70
        },
        "end": {
          "line": 101,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3008,
      "end": 3009,
      "loc": {
        "start": {
          "line": 101,
          "column": 74
        },
        "end": {
          "line": 101,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loop",
      "start": 3018,
      "end": 3022,
      "loc": {
        "start": {
          "line": 102,
          "column": 8
        },
        "end": {
          "line": 102,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3022,
      "end": 3023,
      "loc": {
        "start": {
          "line": 102,
          "column": 12
        },
        "end": {
          "line": 102,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "groups",
      "start": 3024,
      "end": 3030,
      "loc": {
        "start": {
          "line": 102,
          "column": 14
        },
        "end": {
          "line": 102,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3030,
      "end": 3031,
      "loc": {
        "start": {
          "line": 102,
          "column": 20
        },
        "end": {
          "line": 102,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3032,
      "end": 3033,
      "loc": {
        "start": {
          "line": 102,
          "column": 22
        },
        "end": {
          "line": 102,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "group",
      "start": 3034,
      "end": 3039,
      "loc": {
        "start": {
          "line": 102,
          "column": 24
        },
        "end": {
          "line": 102,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3040,
      "end": 3041,
      "loc": {
        "start": {
          "line": 102,
          "column": 30
        },
        "end": {
          "line": 102,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3042,
      "end": 3044,
      "loc": {
        "start": {
          "line": 102,
          "column": 32
        },
        "end": {
          "line": 102,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3045,
      "end": 3046,
      "loc": {
        "start": {
          "line": 102,
          "column": 35
        },
        "end": {
          "line": 102,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3057,
      "end": 3060,
      "loc": {
        "start": {
          "line": 103,
          "column": 10
        },
        "end": {
          "line": 103,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pair",
      "start": 3061,
      "end": 3065,
      "loc": {
        "start": {
          "line": 103,
          "column": 14
        },
        "end": {
          "line": 103,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3066,
      "end": 3067,
      "loc": {
        "start": {
          "line": 103,
          "column": 19
        },
        "end": {
          "line": 103,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "group",
      "start": 3068,
      "end": 3073,
      "loc": {
        "start": {
          "line": 103,
          "column": 21
        },
        "end": {
          "line": 103,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3073,
      "end": 3074,
      "loc": {
        "start": {
          "line": 103,
          "column": 26
        },
        "end": {
          "line": 103,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "split",
      "start": 3074,
      "end": 3079,
      "loc": {
        "start": {
          "line": 103,
          "column": 27
        },
        "end": {
          "line": 103,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3079,
      "end": 3080,
      "loc": {
        "start": {
          "line": 103,
          "column": 32
        },
        "end": {
          "line": 103,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3081,
      "end": 3084,
      "loc": {
        "start": {
          "line": 103,
          "column": 34
        },
        "end": {
          "line": 103,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3085,
      "end": 3086,
      "loc": {
        "start": {
          "line": 103,
          "column": 38
        },
        "end": {
          "line": 103,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 3097,
      "end": 3099,
      "loc": {
        "start": {
          "line": 104,
          "column": 10
        },
        "end": {
          "line": 104,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3100,
      "end": 3101,
      "loc": {
        "start": {
          "line": 104,
          "column": 13
        },
        "end": {
          "line": 104,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pair",
      "start": 3102,
      "end": 3106,
      "loc": {
        "start": {
          "line": 104,
          "column": 15
        },
        "end": {
          "line": 104,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3106,
      "end": 3107,
      "loc": {
        "start": {
          "line": 104,
          "column": 19
        },
        "end": {
          "line": 104,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 3108,
      "end": 3109,
      "loc": {
        "start": {
          "line": 104,
          "column": 21
        },
        "end": {
          "line": 104,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3110,
      "end": 3111,
      "loc": {
        "start": {
          "line": 104,
          "column": 23
        },
        "end": {
          "line": 104,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 3112,
      "end": 3115,
      "loc": {
        "start": {
          "line": 104,
          "column": 25
        },
        "end": {
          "line": 104,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "",
      "start": 3116,
      "end": 3118,
      "loc": {
        "start": {
          "line": 104,
          "column": 29
        },
        "end": {
          "line": 104,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3119,
      "end": 3120,
      "loc": {
        "start": {
          "line": 104,
          "column": 32
        },
        "end": {
          "line": 104,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3121,
      "end": 3122,
      "loc": {
        "start": {
          "line": 104,
          "column": 34
        },
        "end": {
          "line": 104,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3135,
      "end": 3145,
      "loc": {
        "start": {
          "line": 105,
          "column": 12
        },
        "end": {
          "line": 105,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3145,
      "end": 3146,
      "loc": {
        "start": {
          "line": 105,
          "column": 22
        },
        "end": {
          "line": 105,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pair",
      "start": 3147,
      "end": 3151,
      "loc": {
        "start": {
          "line": 105,
          "column": 24
        },
        "end": {
          "line": 105,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3151,
      "end": 3152,
      "loc": {
        "start": {
          "line": 105,
          "column": 28
        },
        "end": {
          "line": 105,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 3153,
      "end": 3154,
      "loc": {
        "start": {
          "line": 105,
          "column": 30
        },
        "end": {
          "line": 105,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3155,
      "end": 3156,
      "loc": {
        "start": {
          "line": 105,
          "column": 32
        },
        "end": {
          "line": 105,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3157,
      "end": 3158,
      "loc": {
        "start": {
          "line": 105,
          "column": 34
        },
        "end": {
          "line": 105,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3159,
      "end": 3160,
      "loc": {
        "start": {
          "line": 105,
          "column": 36
        },
        "end": {
          "line": 105,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3161,
      "end": 3162,
      "loc": {
        "start": {
          "line": 105,
          "column": 38
        },
        "end": {
          "line": 105,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pair",
      "start": 3163,
      "end": 3167,
      "loc": {
        "start": {
          "line": 105,
          "column": 40
        },
        "end": {
          "line": 105,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3167,
      "end": 3168,
      "loc": {
        "start": {
          "line": 105,
          "column": 44
        },
        "end": {
          "line": 105,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 3169,
      "end": 3170,
      "loc": {
        "start": {
          "line": 105,
          "column": 46
        },
        "end": {
          "line": 105,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3171,
      "end": 3172,
      "loc": {
        "start": {
          "line": 105,
          "column": 48
        },
        "end": {
          "line": 105,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 3173,
      "end": 3176,
      "loc": {
        "start": {
          "line": 105,
          "column": 50
        },
        "end": {
          "line": 105,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 3177,
      "end": 3186,
      "loc": {
        "start": {
          "line": 105,
          "column": 54
        },
        "end": {
          "line": 105,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3187,
      "end": 3188,
      "loc": {
        "start": {
          "line": 105,
          "column": 64
        },
        "end": {
          "line": 105,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3189,
      "end": 3190,
      "loc": {
        "start": {
          "line": 105,
          "column": 66
        },
        "end": {
          "line": 105,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pair",
      "start": 3191,
      "end": 3195,
      "loc": {
        "start": {
          "line": 105,
          "column": 68
        },
        "end": {
          "line": 105,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3195,
      "end": 3196,
      "loc": {
        "start": {
          "line": 105,
          "column": 72
        },
        "end": {
          "line": 105,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 1,
      "start": 3197,
      "end": 3198,
      "loc": {
        "start": {
          "line": 105,
          "column": 74
        },
        "end": {
          "line": 105,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3199,
      "end": 3200,
      "loc": {
        "start": {
          "line": 105,
          "column": 76
        },
        "end": {
          "line": 105,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3201,
      "end": 3202,
      "loc": {
        "start": {
          "line": 105,
          "column": 78
        },
        "end": {
          "line": 105,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 3203,
      "end": 3207,
      "loc": {
        "start": {
          "line": 105,
          "column": 80
        },
        "end": {
          "line": 105,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3218,
      "end": 3219,
      "loc": {
        "start": {
          "line": 106,
          "column": 10
        },
        "end": {
          "line": 106,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3228,
      "end": 3229,
      "loc": {
        "start": {
          "line": 107,
          "column": 8
        },
        "end": {
          "line": 107,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3230,
      "end": 3231,
      "loc": {
        "start": {
          "line": 107,
          "column": 10
        },
        "end": {
          "line": 107,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3240,
      "end": 3244,
      "loc": {
        "start": {
          "line": 108,
          "column": 8
        },
        "end": {
          "line": 108,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3244,
      "end": 3245,
      "loc": {
        "start": {
          "line": 108,
          "column": 12
        },
        "end": {
          "line": 108,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3245,
      "end": 3252,
      "loc": {
        "start": {
          "line": 108,
          "column": 13
        },
        "end": {
          "line": 108,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3252,
      "end": 3253,
      "loc": {
        "start": {
          "line": 108,
          "column": 20
        },
        "end": {
          "line": 108,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3253,
      "end": 3263,
      "loc": {
        "start": {
          "line": 108,
          "column": 21
        },
        "end": {
          "line": 108,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3264,
      "end": 3265,
      "loc": {
        "start": {
          "line": 108,
          "column": 32
        },
        "end": {
          "line": 108,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3266,
      "end": 3276,
      "loc": {
        "start": {
          "line": 108,
          "column": 34
        },
        "end": {
          "line": 108,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3283,
      "end": 3284,
      "loc": {
        "start": {
          "line": 109,
          "column": 6
        },
        "end": {
          "line": 109,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 3285,
      "end": 3289,
      "loc": {
        "start": {
          "line": 109,
          "column": 8
        },
        "end": {
          "line": 109,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3290,
      "end": 3291,
      "loc": {
        "start": {
          "line": 109,
          "column": 13
        },
        "end": {
          "line": 109,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3300,
      "end": 3304,
      "loc": {
        "start": {
          "line": 110,
          "column": 8
        },
        "end": {
          "line": 110,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3304,
      "end": 3305,
      "loc": {
        "start": {
          "line": 110,
          "column": 12
        },
        "end": {
          "line": 110,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3305,
      "end": 3312,
      "loc": {
        "start": {
          "line": 110,
          "column": 13
        },
        "end": {
          "line": 110,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3312,
      "end": 3313,
      "loc": {
        "start": {
          "line": 110,
          "column": 20
        },
        "end": {
          "line": 110,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3313,
      "end": 3323,
      "loc": {
        "start": {
          "line": 110,
          "column": 21
        },
        "end": {
          "line": 110,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3324,
      "end": 3325,
      "loc": {
        "start": {
          "line": 110,
          "column": 32
        },
        "end": {
          "line": 110,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3326,
      "end": 3327,
      "loc": {
        "start": {
          "line": 110,
          "column": 34
        },
        "end": {
          "line": 110,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3327,
      "end": 3328,
      "loc": {
        "start": {
          "line": 110,
          "column": 35
        },
        "end": {
          "line": 110,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3335,
      "end": 3336,
      "loc": {
        "start": {
          "line": 111,
          "column": 6
        },
        "end": {
          "line": 111,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3341,
      "end": 3342,
      "loc": {
        "start": {
          "line": 112,
          "column": 4
        },
        "end": {
          "line": 112,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3345,
      "end": 3346,
      "loc": {
        "start": {
          "line": 113,
          "column": 2
        },
        "end": {
          "line": 113,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the protocol of the url\n   * @return {String} The string containing the protocol\n   ",
      "start": 3350,
      "end": 3453,
      "loc": {
        "start": {
          "line": 115,
          "column": 2
        },
        "end": {
          "line": 118,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 3456,
      "end": 3459,
      "loc": {
        "start": {
          "line": 119,
          "column": 2
        },
        "end": {
          "line": 119,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 3460,
      "end": 3468,
      "loc": {
        "start": {
          "line": 119,
          "column": 6
        },
        "end": {
          "line": 119,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3469,
      "end": 3470,
      "loc": {
        "start": {
          "line": 119,
          "column": 15
        },
        "end": {
          "line": 119,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3470,
      "end": 3471,
      "loc": {
        "start": {
          "line": 119,
          "column": 16
        },
        "end": {
          "line": 119,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3472,
      "end": 3473,
      "loc": {
        "start": {
          "line": 119,
          "column": 18
        },
        "end": {
          "line": 119,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3478,
      "end": 3484,
      "loc": {
        "start": {
          "line": 120,
          "column": 4
        },
        "end": {
          "line": 120,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3485,
      "end": 3489,
      "loc": {
        "start": {
          "line": 120,
          "column": 11
        },
        "end": {
          "line": 120,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3489,
      "end": 3490,
      "loc": {
        "start": {
          "line": 120,
          "column": 15
        },
        "end": {
          "line": 120,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3490,
      "end": 3497,
      "loc": {
        "start": {
          "line": 120,
          "column": 16
        },
        "end": {
          "line": 120,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3497,
      "end": 3498,
      "loc": {
        "start": {
          "line": 120,
          "column": 23
        },
        "end": {
          "line": 120,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "protocol",
      "start": 3498,
      "end": 3506,
      "loc": {
        "start": {
          "line": 120,
          "column": 24
        },
        "end": {
          "line": 120,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3509,
      "end": 3510,
      "loc": {
        "start": {
          "line": 121,
          "column": 2
        },
        "end": {
          "line": 121,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the host and port of the url\n   * @return {String} The string containing the hostname and port\n   ",
      "start": 3513,
      "end": 3630,
      "loc": {
        "start": {
          "line": 122,
          "column": 2
        },
        "end": {
          "line": 125,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 3633,
      "end": 3636,
      "loc": {
        "start": {
          "line": 126,
          "column": 2
        },
        "end": {
          "line": 126,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 3637,
      "end": 3641,
      "loc": {
        "start": {
          "line": 126,
          "column": 6
        },
        "end": {
          "line": 126,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3642,
      "end": 3643,
      "loc": {
        "start": {
          "line": 126,
          "column": 11
        },
        "end": {
          "line": 126,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3643,
      "end": 3644,
      "loc": {
        "start": {
          "line": 126,
          "column": 12
        },
        "end": {
          "line": 126,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3645,
      "end": 3646,
      "loc": {
        "start": {
          "line": 126,
          "column": 14
        },
        "end": {
          "line": 126,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3651,
      "end": 3657,
      "loc": {
        "start": {
          "line": 127,
          "column": 4
        },
        "end": {
          "line": 127,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3658,
      "end": 3662,
      "loc": {
        "start": {
          "line": 127,
          "column": 11
        },
        "end": {
          "line": 127,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3662,
      "end": 3663,
      "loc": {
        "start": {
          "line": 127,
          "column": 15
        },
        "end": {
          "line": 127,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3663,
      "end": 3670,
      "loc": {
        "start": {
          "line": 127,
          "column": 16
        },
        "end": {
          "line": 127,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3670,
      "end": 3671,
      "loc": {
        "start": {
          "line": 127,
          "column": 23
        },
        "end": {
          "line": 127,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "host",
      "start": 3671,
      "end": 3675,
      "loc": {
        "start": {
          "line": 127,
          "column": 24
        },
        "end": {
          "line": 127,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3678,
      "end": 3679,
      "loc": {
        "start": {
          "line": 128,
          "column": 2
        },
        "end": {
          "line": 128,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the path of the url\n   * @return {String} The string containing the path\n   ",
      "start": 3682,
      "end": 3777,
      "loc": {
        "start": {
          "line": 129,
          "column": 2
        },
        "end": {
          "line": 132,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 3780,
      "end": 3783,
      "loc": {
        "start": {
          "line": 133,
          "column": 2
        },
        "end": {
          "line": 133,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 3784,
      "end": 3788,
      "loc": {
        "start": {
          "line": 133,
          "column": 6
        },
        "end": {
          "line": 133,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3789,
      "end": 3790,
      "loc": {
        "start": {
          "line": 133,
          "column": 11
        },
        "end": {
          "line": 133,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3790,
      "end": 3791,
      "loc": {
        "start": {
          "line": 133,
          "column": 12
        },
        "end": {
          "line": 133,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3792,
      "end": 3793,
      "loc": {
        "start": {
          "line": 133,
          "column": 14
        },
        "end": {
          "line": 133,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3798,
      "end": 3804,
      "loc": {
        "start": {
          "line": 134,
          "column": 4
        },
        "end": {
          "line": 134,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3805,
      "end": 3809,
      "loc": {
        "start": {
          "line": 134,
          "column": 11
        },
        "end": {
          "line": 134,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3809,
      "end": 3810,
      "loc": {
        "start": {
          "line": 134,
          "column": 15
        },
        "end": {
          "line": 134,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3810,
      "end": 3817,
      "loc": {
        "start": {
          "line": 134,
          "column": 16
        },
        "end": {
          "line": 134,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3817,
      "end": 3818,
      "loc": {
        "start": {
          "line": 134,
          "column": 23
        },
        "end": {
          "line": 134,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "path",
      "start": 3818,
      "end": 3822,
      "loc": {
        "start": {
          "line": 134,
          "column": 24
        },
        "end": {
          "line": 134,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3825,
      "end": 3826,
      "loc": {
        "start": {
          "line": 135,
          "column": 2
        },
        "end": {
          "line": 135,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the parameters of the url\n   * @return {Object} The query string parameters of the url\n   ",
      "start": 3829,
      "end": 3938,
      "loc": {
        "start": {
          "line": 136,
          "column": 2
        },
        "end": {
          "line": 139,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 3941,
      "end": 3944,
      "loc": {
        "start": {
          "line": 140,
          "column": 2
        },
        "end": {
          "line": 140,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3945,
      "end": 3955,
      "loc": {
        "start": {
          "line": 140,
          "column": 6
        },
        "end": {
          "line": 140,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3956,
      "end": 3957,
      "loc": {
        "start": {
          "line": 140,
          "column": 17
        },
        "end": {
          "line": 140,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3957,
      "end": 3958,
      "loc": {
        "start": {
          "line": 140,
          "column": 18
        },
        "end": {
          "line": 140,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3959,
      "end": 3960,
      "loc": {
        "start": {
          "line": 140,
          "column": 20
        },
        "end": {
          "line": 140,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3965,
      "end": 3971,
      "loc": {
        "start": {
          "line": 141,
          "column": 4
        },
        "end": {
          "line": 141,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3972,
      "end": 3976,
      "loc": {
        "start": {
          "line": 141,
          "column": 11
        },
        "end": {
          "line": 141,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3976,
      "end": 3977,
      "loc": {
        "start": {
          "line": 141,
          "column": 15
        },
        "end": {
          "line": 141,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 3977,
      "end": 3984,
      "loc": {
        "start": {
          "line": 141,
          "column": 16
        },
        "end": {
          "line": 141,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3984,
      "end": 3985,
      "loc": {
        "start": {
          "line": 141,
          "column": 23
        },
        "end": {
          "line": 141,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parameters",
      "start": 3985,
      "end": 3995,
      "loc": {
        "start": {
          "line": 141,
          "column": 24
        },
        "end": {
          "line": 141,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3998,
      "end": 3999,
      "loc": {
        "start": {
          "line": 142,
          "column": 2
        },
        "end": {
          "line": 142,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the hash of the url\n   * @return {String} The hash of the url\n   ",
      "start": 4002,
      "end": 4086,
      "loc": {
        "start": {
          "line": 143,
          "column": 2
        },
        "end": {
          "line": 146,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 4089,
      "end": 4092,
      "loc": {
        "start": {
          "line": 147,
          "column": 2
        },
        "end": {
          "line": 147,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 4093,
      "end": 4097,
      "loc": {
        "start": {
          "line": 147,
          "column": 6
        },
        "end": {
          "line": 147,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4098,
      "end": 4099,
      "loc": {
        "start": {
          "line": 147,
          "column": 11
        },
        "end": {
          "line": 147,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4099,
      "end": 4100,
      "loc": {
        "start": {
          "line": 147,
          "column": 12
        },
        "end": {
          "line": 147,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4101,
      "end": 4102,
      "loc": {
        "start": {
          "line": 147,
          "column": 14
        },
        "end": {
          "line": 147,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4107,
      "end": 4113,
      "loc": {
        "start": {
          "line": 148,
          "column": 4
        },
        "end": {
          "line": 148,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4114,
      "end": 4118,
      "loc": {
        "start": {
          "line": 148,
          "column": 11
        },
        "end": {
          "line": 148,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4118,
      "end": 4119,
      "loc": {
        "start": {
          "line": 148,
          "column": 15
        },
        "end": {
          "line": 148,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 4119,
      "end": 4126,
      "loc": {
        "start": {
          "line": 148,
          "column": 16
        },
        "end": {
          "line": 148,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4126,
      "end": 4127,
      "loc": {
        "start": {
          "line": 148,
          "column": 23
        },
        "end": {
          "line": 148,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hash",
      "start": 4127,
      "end": 4131,
      "loc": {
        "start": {
          "line": 148,
          "column": 24
        },
        "end": {
          "line": 148,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4134,
      "end": 4135,
      "loc": {
        "start": {
          "line": 149,
          "column": 2
        },
        "end": {
          "line": 149,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the username from the url\n   * @return {String} The username from the url\n   ",
      "start": 4138,
      "end": 4234,
      "loc": {
        "start": {
          "line": 150,
          "column": 2
        },
        "end": {
          "line": 153,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 4237,
      "end": 4240,
      "loc": {
        "start": {
          "line": 154,
          "column": 2
        },
        "end": {
          "line": 154,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "username",
      "start": 4241,
      "end": 4249,
      "loc": {
        "start": {
          "line": 154,
          "column": 6
        },
        "end": {
          "line": 154,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4250,
      "end": 4251,
      "loc": {
        "start": {
          "line": 154,
          "column": 15
        },
        "end": {
          "line": 154,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4251,
      "end": 4252,
      "loc": {
        "start": {
          "line": 154,
          "column": 16
        },
        "end": {
          "line": 154,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4253,
      "end": 4254,
      "loc": {
        "start": {
          "line": 154,
          "column": 18
        },
        "end": {
          "line": 154,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4259,
      "end": 4265,
      "loc": {
        "start": {
          "line": 155,
          "column": 4
        },
        "end": {
          "line": 155,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4266,
      "end": 4270,
      "loc": {
        "start": {
          "line": 155,
          "column": 11
        },
        "end": {
          "line": 155,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4270,
      "end": 4271,
      "loc": {
        "start": {
          "line": 155,
          "column": 15
        },
        "end": {
          "line": 155,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 4271,
      "end": 4278,
      "loc": {
        "start": {
          "line": 155,
          "column": 16
        },
        "end": {
          "line": 155,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4278,
      "end": 4279,
      "loc": {
        "start": {
          "line": 155,
          "column": 23
        },
        "end": {
          "line": 155,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "username",
      "start": 4279,
      "end": 4287,
      "loc": {
        "start": {
          "line": 155,
          "column": 24
        },
        "end": {
          "line": 155,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4290,
      "end": 4291,
      "loc": {
        "start": {
          "line": 156,
          "column": 2
        },
        "end": {
          "line": 156,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns the password from the url\n   * @return {String} The password from the url\n   ",
      "start": 4294,
      "end": 4390,
      "loc": {
        "start": {
          "line": 157,
          "column": 2
        },
        "end": {
          "line": 160,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 4393,
      "end": 4396,
      "loc": {
        "start": {
          "line": 161,
          "column": 2
        },
        "end": {
          "line": 161,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "password",
      "start": 4397,
      "end": 4405,
      "loc": {
        "start": {
          "line": 161,
          "column": 6
        },
        "end": {
          "line": 161,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4406,
      "end": 4407,
      "loc": {
        "start": {
          "line": 161,
          "column": 15
        },
        "end": {
          "line": 161,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4407,
      "end": 4408,
      "loc": {
        "start": {
          "line": 161,
          "column": 16
        },
        "end": {
          "line": 161,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4409,
      "end": 4410,
      "loc": {
        "start": {
          "line": 161,
          "column": 18
        },
        "end": {
          "line": 161,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4415,
      "end": 4421,
      "loc": {
        "start": {
          "line": 162,
          "column": 4
        },
        "end": {
          "line": 162,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4422,
      "end": 4426,
      "loc": {
        "start": {
          "line": 162,
          "column": 11
        },
        "end": {
          "line": 162,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4426,
      "end": 4427,
      "loc": {
        "start": {
          "line": 162,
          "column": 15
        },
        "end": {
          "line": 162,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 4427,
      "end": 4434,
      "loc": {
        "start": {
          "line": 162,
          "column": 16
        },
        "end": {
          "line": 162,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4434,
      "end": 4435,
      "loc": {
        "start": {
          "line": 162,
          "column": 23
        },
        "end": {
          "line": 162,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "password",
      "start": 4435,
      "end": 4443,
      "loc": {
        "start": {
          "line": 162,
          "column": 24
        },
        "end": {
          "line": 162,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4446,
      "end": 4447,
      "loc": {
        "start": {
          "line": 163,
          "column": 2
        },
        "end": {
          "line": 163,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Returns all the parts of the url\n   * @return {Object} The object containing all the url parts\n   ",
      "start": 4450,
      "end": 4559,
      "loc": {
        "start": {
          "line": 164,
          "column": 2
        },
        "end": {
          "line": 167,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 4562,
      "end": 4565,
      "loc": {
        "start": {
          "line": 168,
          "column": 2
        },
        "end": {
          "line": 168,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parts",
      "start": 4566,
      "end": 4571,
      "loc": {
        "start": {
          "line": 168,
          "column": 6
        },
        "end": {
          "line": 168,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4572,
      "end": 4573,
      "loc": {
        "start": {
          "line": 168,
          "column": 12
        },
        "end": {
          "line": 168,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4573,
      "end": 4574,
      "loc": {
        "start": {
          "line": 168,
          "column": 13
        },
        "end": {
          "line": 168,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4575,
      "end": 4576,
      "loc": {
        "start": {
          "line": 168,
          "column": 15
        },
        "end": {
          "line": 168,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4581,
      "end": 4587,
      "loc": {
        "start": {
          "line": 169,
          "column": 4
        },
        "end": {
          "line": 169,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4588,
      "end": 4592,
      "loc": {
        "start": {
          "line": 169,
          "column": 11
        },
        "end": {
          "line": 169,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4592,
      "end": 4593,
      "loc": {
        "start": {
          "line": 169,
          "column": 15
        },
        "end": {
          "line": 169,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parts",
      "start": 4593,
      "end": 4600,
      "loc": {
        "start": {
          "line": 169,
          "column": 16
        },
        "end": {
          "line": 169,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4603,
      "end": 4604,
      "loc": {
        "start": {
          "line": 170,
          "column": 2
        },
        "end": {
          "line": 170,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Return the url\n   * @return {String} The provided url\n   ",
      "start": 4608,
      "end": 4676,
      "loc": {
        "start": {
          "line": 172,
          "column": 2
        },
        "end": {
          "line": 175,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toString",
      "start": 4679,
      "end": 4687,
      "loc": {
        "start": {
          "line": 176,
          "column": 2
        },
        "end": {
          "line": 176,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4688,
      "end": 4689,
      "loc": {
        "start": {
          "line": 176,
          "column": 11
        },
        "end": {
          "line": 176,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4689,
      "end": 4690,
      "loc": {
        "start": {
          "line": 176,
          "column": 12
        },
        "end": {
          "line": 176,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4691,
      "end": 4692,
      "loc": {
        "start": {
          "line": 176,
          "column": 14
        },
        "end": {
          "line": 176,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4697,
      "end": 4703,
      "loc": {
        "start": {
          "line": 177,
          "column": 4
        },
        "end": {
          "line": 177,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4704,
      "end": 4708,
      "loc": {
        "start": {
          "line": 177,
          "column": 11
        },
        "end": {
          "line": 177,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4708,
      "end": 4709,
      "loc": {
        "start": {
          "line": 177,
          "column": 15
        },
        "end": {
          "line": 177,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__url",
      "start": 4709,
      "end": 4714,
      "loc": {
        "start": {
          "line": 177,
          "column": 16
        },
        "end": {
          "line": 177,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4717,
      "end": 4718,
      "loc": {
        "start": {
          "line": 178,
          "column": 2
        },
        "end": {
          "line": 178,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Set the url string\n   * @param {String} url The url string\n   * @return {Url} The instance of the Url class\n   ",
      "start": 4722,
      "end": 4844,
      "loc": {
        "start": {
          "line": 180,
          "column": 2
        },
        "end": {
          "line": 184,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "set",
      "start": 4847,
      "end": 4850,
      "loc": {
        "start": {
          "line": 185,
          "column": 2
        },
        "end": {
          "line": 185,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4851,
      "end": 4852,
      "loc": {
        "start": {
          "line": 185,
          "column": 6
        },
        "end": {
          "line": 185,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 4853,
      "end": 4856,
      "loc": {
        "start": {
          "line": 185,
          "column": 8
        },
        "end": {
          "line": 185,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4857,
      "end": 4858,
      "loc": {
        "start": {
          "line": 185,
          "column": 12
        },
        "end": {
          "line": 185,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4859,
      "end": 4860,
      "loc": {
        "start": {
          "line": 185,
          "column": 14
        },
        "end": {
          "line": 185,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4865,
      "end": 4869,
      "loc": {
        "start": {
          "line": 186,
          "column": 4
        },
        "end": {
          "line": 186,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4869,
      "end": 4870,
      "loc": {
        "start": {
          "line": 186,
          "column": 8
        },
        "end": {
          "line": 186,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__url",
      "start": 4870,
      "end": 4875,
      "loc": {
        "start": {
          "line": 186,
          "column": 9
        },
        "end": {
          "line": 186,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4876,
      "end": 4877,
      "loc": {
        "start": {
          "line": 186,
          "column": 15
        },
        "end": {
          "line": 186,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4878,
      "end": 4879,
      "loc": {
        "start": {
          "line": 186,
          "column": 17
        },
        "end": {
          "line": 186,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 4880,
      "end": 4883,
      "loc": {
        "start": {
          "line": 186,
          "column": 19
        },
        "end": {
          "line": 186,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4884,
      "end": 4885,
      "loc": {
        "start": {
          "line": 186,
          "column": 23
        },
        "end": {
          "line": 186,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4886,
      "end": 4887,
      "loc": {
        "start": {
          "line": 186,
          "column": 25
        },
        "end": {
          "line": 186,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4888,
      "end": 4892,
      "loc": {
        "start": {
          "line": 186,
          "column": 27
        },
        "end": {
          "line": 186,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4892,
      "end": 4893,
      "loc": {
        "start": {
          "line": 186,
          "column": 31
        },
        "end": {
          "line": 186,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__parseUrl",
      "start": 4893,
      "end": 4903,
      "loc": {
        "start": {
          "line": 186,
          "column": 32
        },
        "end": {
          "line": 186,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4903,
      "end": 4904,
      "loc": {
        "start": {
          "line": 186,
          "column": 42
        },
        "end": {
          "line": 186,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "url",
      "start": 4905,
      "end": 4908,
      "loc": {
        "start": {
          "line": 186,
          "column": 44
        },
        "end": {
          "line": 186,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4909,
      "end": 4910,
      "loc": {
        "start": {
          "line": 186,
          "column": 48
        },
        "end": {
          "line": 186,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4911,
      "end": 4912,
      "loc": {
        "start": {
          "line": 186,
          "column": 50
        },
        "end": {
          "line": 186,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "window",
      "start": 4913,
      "end": 4919,
      "loc": {
        "start": {
          "line": 186,
          "column": 52
        },
        "end": {
          "line": 186,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4919,
      "end": 4920,
      "loc": {
        "start": {
          "line": 186,
          "column": 58
        },
        "end": {
          "line": 186,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "location",
      "start": 4920,
      "end": 4928,
      "loc": {
        "start": {
          "line": 186,
          "column": 59
        },
        "end": {
          "line": 186,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4928,
      "end": 4929,
      "loc": {
        "start": {
          "line": 186,
          "column": 67
        },
        "end": {
          "line": 186,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "href",
      "start": 4929,
      "end": 4933,
      "loc": {
        "start": {
          "line": 186,
          "column": 68
        },
        "end": {
          "line": 186,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4938,
      "end": 4942,
      "loc": {
        "start": {
          "line": 187,
          "column": 4
        },
        "end": {
          "line": 187,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4942,
      "end": 4943,
      "loc": {
        "start": {
          "line": 187,
          "column": 8
        },
        "end": {
          "line": 187,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "__split",
      "start": 4943,
      "end": 4950,
      "loc": {
        "start": {
          "line": 187,
          "column": 9
        },
        "end": {
          "line": 187,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4950,
      "end": 4951,
      "loc": {
        "start": {
          "line": 187,
          "column": 16
        },
        "end": {
          "line": 187,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4951,
      "end": 4952,
      "loc": {
        "start": {
          "line": 187,
          "column": 17
        },
        "end": {
          "line": 187,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4957,
      "end": 4963,
      "loc": {
        "start": {
          "line": 188,
          "column": 4
        },
        "end": {
          "line": 188,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4964,
      "end": 4968,
      "loc": {
        "start": {
          "line": 188,
          "column": 11
        },
        "end": {
          "line": 188,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4971,
      "end": 4972,
      "loc": {
        "start": {
          "line": 189,
          "column": 2
        },
        "end": {
          "line": 189,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4973,
      "end": 4974,
      "loc": {
        "start": {
          "line": 190,
          "column": 0
        },
        "end": {
          "line": 190,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4975,
      "end": 4975,
      "loc": {
        "start": {
          "line": 191,
          "column": 0
        },
        "end": {
          "line": 191,
          "column": 0
        }
      }
    }
  ]
}