{
  "type": "Program",
  "body": [
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Edge",
            "range": [
              7,
              11
            ],
            "loc": {
              "start": {
                "line": 1,
                "column": 7
              },
              "end": {
                "line": 1,
                "column": 11
              }
            }
          },
          "range": [
            7,
            11
          ],
          "loc": {
            "start": {
              "line": 1,
              "column": 7
            },
            "end": {
              "line": 1,
              "column": 11
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./Edge",
        "raw": "'./Edge'",
        "range": [
          17,
          25
        ],
        "loc": {
          "start": {
            "line": 1,
            "column": 17
          },
          "end": {
            "line": 1,
            "column": 25
          }
        }
      },
      "range": [
        0,
        26
      ],
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 26
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "local": {
            "type": "Identifier",
            "name": "Vertex",
            "range": [
              34,
              40
            ],
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 13
              }
            }
          },
          "range": [
            34,
            40
          ],
          "loc": {
            "start": {
              "line": 2,
              "column": 7
            },
            "end": {
              "line": 2,
              "column": 13
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./Vertex",
        "raw": "'./Vertex'",
        "range": [
          46,
          56
        ],
        "loc": {
          "start": {
            "line": 2,
            "column": 19
          },
          "end": {
            "line": 2,
            "column": 29
          }
        }
      },
      "range": [
        27,
        57
      ],
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 30
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "local": {
            "type": "Identifier",
            "name": "DuplicateVertexError",
            "range": [
              65,
              85
            ],
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 27
              }
            }
          },
          "range": [
            65,
            85
          ],
          "loc": {
            "start": {
              "line": 3,
              "column": 7
            },
            "end": {
              "line": 3,
              "column": 27
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./DuplicateVertexError",
        "raw": "'./DuplicateVertexError'",
        "range": [
          91,
          115
        ],
        "loc": {
          "start": {
            "line": 3,
            "column": 33
          },
          "end": {
            "line": 3,
            "column": 57
          }
        }
      },
      "range": [
        58,
        116
      ],
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 58
        }
      }
    },
    {
      "type": "ImportDeclaration",
      "specifiers": [
        {
          "type": "ImportDefaultSpecifier",
          "local": {
            "type": "Identifier",
            "name": "DuplicateEdgeError",
            "range": [
              124,
              142
            ],
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 25
              }
            }
          },
          "range": [
            124,
            142
          ],
          "loc": {
            "start": {
              "line": 4,
              "column": 7
            },
            "end": {
              "line": 4,
              "column": 25
            }
          }
        }
      ],
      "source": {
        "type": "Literal",
        "value": "./DuplicateEdgeError",
        "raw": "'./DuplicateEdgeError'",
        "range": [
          148,
          170
        ],
        "loc": {
          "start": {
            "line": 4,
            "column": 31
          },
          "end": {
            "line": 4,
            "column": 53
          }
        }
      },
      "range": [
        117,
        171
      ],
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 54
        }
      },
      "trailingComments": [
        {
          "type": "Block",
          "value": "*\n * Graph: represents a undirected graph data structure.\n * Usage: let graph = new Graph();\n *        graph.addVertex('A');\n *        graph.addVertex('B');\n *        graph.addEdge('A','B');\n ",
          "range": [
            173,
            369
          ],
          "loc": {
            "start": {
              "line": 6,
              "column": 0
            },
            "end": {
              "line": 12,
              "column": 3
            }
          }
        }
      ]
    },
    {
      "type": "Identifier",
      "id": {
        "type": "Identifier",
        "name": "Graph",
        "range": [
          376,
          381
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 6
          },
          "end": {
            "line": 13,
            "column": 11
          }
        }
      },
      "superClass": null,
      "body": {
        "type": "ClassBody",
        "body": [
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "constructor",
              "range": [
                386,
                397
              ],
              "loc": {
                "start": {
                  "line": 14,
                  "column": 2
                },
                "end": {
                  "line": 14,
                  "column": 13
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            405,
                            409
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 4
                            },
                            "end": {
                              "line": 15,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_vertices",
                          "range": [
                            410,
                            419
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 9
                            },
                            "end": {
                              "line": 15,
                              "column": 18
                            }
                          }
                        },
                        "range": [
                          405,
                          419
                        ],
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 4
                          },
                          "end": {
                            "line": 15,
                            "column": 18
                          }
                        }
                      },
                      "right": {
                        "type": "ArrayExpression",
                        "elements": [],
                        "range": [
                          422,
                          424
                        ],
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 21
                          },
                          "end": {
                            "line": 15,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        405,
                        424
                      ],
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 4
                        },
                        "end": {
                          "line": 15,
                          "column": 23
                        }
                      }
                    },
                    "range": [
                      405,
                      425
                    ],
                    "loc": {
                      "start": {
                        "line": 15,
                        "column": 4
                      },
                      "end": {
                        "line": 15,
                        "column": 24
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "AssignmentExpression",
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            430,
                            434
                          ],
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 4
                            },
                            "end": {
                              "line": 16,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_edges",
                          "range": [
                            435,
                            441
                          ],
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 9
                            },
                            "end": {
                              "line": 16,
                              "column": 15
                            }
                          }
                        },
                        "range": [
                          430,
                          441
                        ],
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 4
                          },
                          "end": {
                            "line": 16,
                            "column": 15
                          }
                        }
                      },
                      "right": {
                        "type": "ArrayExpression",
                        "elements": [],
                        "range": [
                          444,
                          446
                        ],
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 18
                          },
                          "end": {
                            "line": 16,
                            "column": 20
                          }
                        }
                      },
                      "range": [
                        430,
                        446
                      ],
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 4
                        },
                        "end": {
                          "line": 16,
                          "column": 20
                        }
                      }
                    },
                    "range": [
                      430,
                      447
                    ],
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 4
                      },
                      "end": {
                        "line": 16,
                        "column": 21
                      }
                    }
                  }
                ],
                "range": [
                  399,
                  451
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 15
                  },
                  "end": {
                    "line": 17,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                397,
                451
              ],
              "loc": {
                "start": {
                  "line": 14,
                  "column": 13
                },
                "end": {
                  "line": 17,
                  "column": 3
                }
              }
            },
            "kind": "constructor",
            "computed": false,
            "range": [
              386,
              451
            ],
            "loc": {
              "start": {
                "line": 14,
                "column": 2
              },
              "end": {
                "line": 17,
                "column": 3
              }
            },
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @return {Array} array of all Vertex instances in this graph.\n   ",
                "range": [
                  455,
                  530
                ],
                "loc": {
                  "start": {
                    "line": 19,
                    "column": 2
                  },
                  "end": {
                    "line": 21,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getVertices",
              "range": [
                533,
                544
              ],
              "loc": {
                "start": {
                  "line": 22,
                  "column": 2
                },
                "end": {
                  "line": 22,
                  "column": 13
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "ThisExpression",
                        "range": [
                          559,
                          563
                        ],
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 11
                          },
                          "end": {
                            "line": 23,
                            "column": 15
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "_vertices",
                        "range": [
                          564,
                          573
                        ],
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 16
                          },
                          "end": {
                            "line": 23,
                            "column": 25
                          }
                        }
                      },
                      "range": [
                        559,
                        573
                      ],
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 11
                        },
                        "end": {
                          "line": 23,
                          "column": 25
                        }
                      }
                    },
                    "range": [
                      552,
                      574
                    ],
                    "loc": {
                      "start": {
                        "line": 23,
                        "column": 4
                      },
                      "end": {
                        "line": 23,
                        "column": 26
                      }
                    }
                  }
                ],
                "range": [
                  546,
                  578
                ],
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 15
                  },
                  "end": {
                    "line": 24,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                544,
                578
              ],
              "loc": {
                "start": {
                  "line": 22,
                  "column": 13
                },
                "end": {
                  "line": 24,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              533,
              578
            ],
            "loc": {
              "start": {
                "line": 22,
                "column": 2
              },
              "end": {
                "line": 24,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @return {Array} array of all Vertex instances in this graph.\n   ",
                "range": [
                  455,
                  530
                ],
                "loc": {
                  "start": {
                    "line": 19,
                    "column": 2
                  },
                  "end": {
                    "line": 21,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value to find in the graph.\n   * @return {Boolean} true if any vertex has this value else false\n   ",
                "range": [
                  582,
                  707
                ],
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 2
                  },
                  "end": {
                    "line": 29,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "hasVertexWithValue",
              "range": [
                710,
                728
              ],
              "loc": {
                "start": {
                  "line": 30,
                  "column": 2
                },
                "end": {
                  "line": 30,
                  "column": 20
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "value",
                  "range": [
                    729,
                    734
                  ],
                  "loc": {
                    "start": {
                      "line": 30,
                      "column": 21
                    },
                    "end": {
                      "line": 30,
                      "column": 26
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "vertexValues",
                          "range": [
                            745,
                            757
                          ],
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 8
                            },
                            "end": {
                              "line": 31,
                              "column": 20
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                760,
                                764
                              ],
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 23
                                },
                                "end": {
                                  "line": 31,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getVertexValues",
                              "range": [
                                765,
                                780
                              ],
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 28
                                },
                                "end": {
                                  "line": 31,
                                  "column": 43
                                }
                              }
                            },
                            "range": [
                              760,
                              780
                            ],
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 23
                              },
                              "end": {
                                "line": 31,
                                "column": 43
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            760,
                            782
                          ],
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 23
                            },
                            "end": {
                              "line": 31,
                              "column": 45
                            }
                          }
                        },
                        "range": [
                          745,
                          782
                        ],
                        "loc": {
                          "start": {
                            "line": 31,
                            "column": 8
                          },
                          "end": {
                            "line": 31,
                            "column": 45
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      741,
                      783
                    ],
                    "loc": {
                      "start": {
                        "line": 31,
                        "column": 4
                      },
                      "end": {
                        "line": 31,
                        "column": 46
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "UnaryExpression",
                      "operator": "!",
                      "argument": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "UnaryExpression",
                          "operator": "~",
                          "argument": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "vertexValues",
                                "range": [
                                  798,
                                  810
                                ],
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 26
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "indexOf",
                                "range": [
                                  811,
                                  818
                                ],
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 34
                                  }
                                }
                              },
                              "range": [
                                798,
                                818
                              ],
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 14
                                },
                                "end": {
                                  "line": 32,
                                  "column": 34
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "name": "value",
                                "range": [
                                  819,
                                  824
                                ],
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 40
                                  }
                                }
                              }
                            ],
                            "range": [
                              798,
                              825
                            ],
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 14
                              },
                              "end": {
                                "line": 32,
                                "column": 41
                              }
                            }
                          },
                          "prefix": true,
                          "range": [
                            797,
                            825
                          ],
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 13
                            },
                            "end": {
                              "line": 32,
                              "column": 41
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          796,
                          825
                        ],
                        "loc": {
                          "start": {
                            "line": 32,
                            "column": 12
                          },
                          "end": {
                            "line": 32,
                            "column": 41
                          }
                        }
                      },
                      "prefix": true,
                      "range": [
                        795,
                        825
                      ],
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 11
                        },
                        "end": {
                          "line": 32,
                          "column": 41
                        }
                      }
                    },
                    "range": [
                      788,
                      826
                    ],
                    "loc": {
                      "start": {
                        "line": 32,
                        "column": 4
                      },
                      "end": {
                        "line": 32,
                        "column": 42
                      }
                    }
                  }
                ],
                "range": [
                  735,
                  830
                ],
                "loc": {
                  "start": {
                    "line": 30,
                    "column": 27
                  },
                  "end": {
                    "line": 33,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                728,
                830
              ],
              "loc": {
                "start": {
                  "line": 30,
                  "column": 20
                },
                "end": {
                  "line": 33,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              710,
              830
            ],
            "loc": {
              "start": {
                "line": 30,
                "column": 2
              },
              "end": {
                "line": 33,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value to find in the graph.\n   * @return {Boolean} true if any vertex has this value else false\n   ",
                "range": [
                  582,
                  707
                ],
                "loc": {
                  "start": {
                    "line": 26,
                    "column": 2
                  },
                  "end": {
                    "line": 29,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @return {Array} array of values in all graph vertices.\n   ",
                "range": [
                  834,
                  903
                ],
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 2
                  },
                  "end": {
                    "line": 37,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getVertexValues",
              "range": [
                906,
                921
              ],
              "loc": {
                "start": {
                  "line": 38,
                  "column": 2
                },
                "end": {
                  "line": 38,
                  "column": 17
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              936,
                              940
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 11
                              },
                              "end": {
                                "line": 39,
                                "column": 15
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_vertices",
                            "range": [
                              941,
                              950
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 16
                              },
                              "end": {
                                "line": 39,
                                "column": 25
                              }
                            }
                          },
                          "range": [
                            936,
                            950
                          ],
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 11
                            },
                            "end": {
                              "line": 39,
                              "column": 25
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "map",
                          "range": [
                            951,
                            954
                          ],
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 26
                            },
                            "end": {
                              "line": 39,
                              "column": 29
                            }
                          }
                        },
                        "range": [
                          936,
                          954
                        ],
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 11
                          },
                          "end": {
                            "line": 39,
                            "column": 29
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "vertex",
                              "range": [
                                956,
                                962
                              ],
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 31
                                },
                                "end": {
                                  "line": 39,
                                  "column": 37
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "vertex",
                                      "range": [
                                        982,
                                        988
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 40,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 40,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "getValue",
                                      "range": [
                                        989,
                                        997
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 40,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 40,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "range": [
                                      982,
                                      997
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 40,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 40,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "arguments": [],
                                  "range": [
                                    982,
                                    999
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 30
                                    }
                                  }
                                },
                                "range": [
                                  975,
                                  1000
                                ],
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 31
                                  }
                                }
                              }
                            ],
                            "range": [
                              967,
                              1006
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 42
                              },
                              "end": {
                                "line": 41,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            955,
                            1006
                          ],
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 30
                            },
                            "end": {
                              "line": 41,
                              "column": 5
                            }
                          }
                        }
                      ],
                      "range": [
                        936,
                        1007
                      ],
                      "loc": {
                        "start": {
                          "line": 39,
                          "column": 11
                        },
                        "end": {
                          "line": 41,
                          "column": 6
                        }
                      }
                    },
                    "range": [
                      929,
                      1008
                    ],
                    "loc": {
                      "start": {
                        "line": 39,
                        "column": 4
                      },
                      "end": {
                        "line": 41,
                        "column": 7
                      }
                    }
                  }
                ],
                "range": [
                  923,
                  1012
                ],
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 19
                  },
                  "end": {
                    "line": 42,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                921,
                1012
              ],
              "loc": {
                "start": {
                  "line": 38,
                  "column": 17
                },
                "end": {
                  "line": 42,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              906,
              1012
            ],
            "loc": {
              "start": {
                "line": 38,
                "column": 2
              },
              "end": {
                "line": 42,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @return {Array} array of values in all graph vertices.\n   ",
                "range": [
                  834,
                  903
                ],
                "loc": {
                  "start": {
                    "line": 35,
                    "column": 2
                  },
                  "end": {
                    "line": 37,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value to set on the vertex\n   * @throws {DuplicateVertexError} when adding vertex whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  1016,
                  1204
                ],
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 2
                  },
                  "end": {
                    "line": 48,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "addVertex",
              "range": [
                1207,
                1216
              ],
              "loc": {
                "start": {
                  "line": 49,
                  "column": 2
                },
                "end": {
                  "line": 49,
                  "column": 11
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "value",
                  "range": [
                    1217,
                    1222
                  ],
                  "loc": {
                    "start": {
                      "line": 49,
                      "column": 12
                    },
                    "end": {
                      "line": 49,
                      "column": 17
                    }
                  }
                },
                {
                  "type": "AssignmentPattern",
                  "left": {
                    "type": "Identifier",
                    "name": "vertex_class",
                    "range": [
                      1224,
                      1236
                    ],
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 19
                      },
                      "end": {
                        "line": 49,
                        "column": 31
                      }
                    }
                  },
                  "right": {
                    "type": "Identifier",
                    "name": "Vertex",
                    "range": [
                      1237,
                      1243
                    ],
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 32
                      },
                      "end": {
                        "line": 49,
                        "column": 38
                      }
                    }
                  },
                  "range": [
                    1224,
                    1243
                  ],
                  "loc": {
                    "start": {
                      "line": 49,
                      "column": 19
                    },
                    "end": {
                      "line": 49,
                      "column": 38
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            1254,
                            1258
                          ],
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 8
                            },
                            "end": {
                              "line": 50,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "hasVertexWithValue",
                          "range": [
                            1259,
                            1277
                          ],
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 13
                            },
                            "end": {
                              "line": 50,
                              "column": 31
                            }
                          }
                        },
                        "range": [
                          1254,
                          1277
                        ],
                        "loc": {
                          "start": {
                            "line": 50,
                            "column": 8
                          },
                          "end": {
                            "line": 50,
                            "column": 31
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "value",
                          "range": [
                            1278,
                            1283
                          ],
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 32
                            },
                            "end": {
                              "line": 50,
                              "column": 37
                            }
                          }
                        }
                      ],
                      "range": [
                        1254,
                        1284
                      ],
                      "loc": {
                        "start": {
                          "line": 50,
                          "column": 8
                        },
                        "end": {
                          "line": 50,
                          "column": 38
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ThrowStatement",
                          "argument": {
                            "type": "NewExpression",
                            "callee": {
                              "type": "Identifier",
                              "name": "DuplicateVertexError",
                              "range": [
                                1303,
                                1323
                              ],
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 16
                                },
                                "end": {
                                  "line": 51,
                                  "column": 36
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "operator": "+",
                                "left": {
                                  "type": "BinaryExpression",
                                  "operator": "+",
                                  "left": {
                                    "type": "Literal",
                                    "value": "Cannot add duplicate value '",
                                    "raw": "\"Cannot add duplicate value '\"",
                                    "range": [
                                      1324,
                                      1354
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 51,
                                        "column": 67
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          1357,
                                          1362
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 75
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "toString",
                                        "range": [
                                          1363,
                                          1371
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 84
                                          }
                                        }
                                      },
                                      "range": [
                                        1357,
                                        1371
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 84
                                        }
                                      }
                                    },
                                    "arguments": [],
                                    "range": [
                                      1357,
                                      1373
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 51,
                                        "column": 86
                                      }
                                    }
                                  },
                                  "range": [
                                    1324,
                                    1373
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 86
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Literal",
                                  "value": "' to graph.",
                                  "raw": "\"' to graph.\"",
                                  "range": [
                                    1376,
                                    1389
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 89
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 102
                                    }
                                  }
                                },
                                "range": [
                                  1324,
                                  1389
                                ],
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 102
                                  }
                                }
                              }
                            ],
                            "range": [
                              1299,
                              1390
                            ],
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 12
                              },
                              "end": {
                                "line": 51,
                                "column": 103
                              }
                            }
                          },
                          "range": [
                            1293,
                            1391
                          ],
                          "loc": {
                            "start": {
                              "line": 51,
                              "column": 6
                            },
                            "end": {
                              "line": 51,
                              "column": 104
                            }
                          }
                        }
                      ],
                      "range": [
                        1285,
                        1397
                      ],
                      "loc": {
                        "start": {
                          "line": 50,
                          "column": 39
                        },
                        "end": {
                          "line": 52,
                          "column": 5
                        }
                      }
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "VariableDeclaration",
                          "declarations": [
                            {
                              "type": "VariableDeclarator",
                              "id": {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  1415,
                                  1421
                                ],
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 16
                                  }
                                }
                              },
                              "init": {
                                "type": "NewExpression",
                                "callee": {
                                  "type": "Identifier",
                                  "name": "vertex_class",
                                  "range": [
                                    1428,
                                    1440
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 35
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "value",
                                    "range": [
                                      1441,
                                      1446
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 41
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  1424,
                                  1447
                                ],
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 42
                                  }
                                }
                              },
                              "range": [
                                1415,
                                1447
                              ],
                              "loc": {
                                "start": {
                                  "line": 53,
                                  "column": 10
                                },
                                "end": {
                                  "line": 53,
                                  "column": 42
                                }
                              }
                            }
                          ],
                          "kind": "var",
                          "range": [
                            1411,
                            1448
                          ],
                          "loc": {
                            "start": {
                              "line": 53,
                              "column": 6
                            },
                            "end": {
                              "line": 53,
                              "column": 43
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    1455,
                                    1459
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "_vertices",
                                  "range": [
                                    1460,
                                    1469
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 20
                                    }
                                  }
                                },
                                "range": [
                                  1455,
                                  1469
                                ],
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 20
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "push",
                                "range": [
                                  1470,
                                  1474
                                ],
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 25
                                  }
                                }
                              },
                              "range": [
                                1455,
                                1474
                              ],
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 6
                                },
                                "end": {
                                  "line": 54,
                                  "column": 25
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  1475,
                                  1481
                                ],
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 32
                                  }
                                }
                              }
                            ],
                            "range": [
                              1455,
                              1482
                            ],
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 6
                              },
                              "end": {
                                "line": 54,
                                "column": 33
                              }
                            }
                          },
                          "range": [
                            1455,
                            1483
                          ],
                          "loc": {
                            "start": {
                              "line": 54,
                              "column": 6
                            },
                            "end": {
                              "line": 54,
                              "column": 34
                            }
                          }
                        }
                      ],
                      "range": [
                        1403,
                        1489
                      ],
                      "loc": {
                        "start": {
                          "line": 52,
                          "column": 11
                        },
                        "end": {
                          "line": 55,
                          "column": 5
                        }
                      }
                    },
                    "range": [
                      1250,
                      1489
                    ],
                    "loc": {
                      "start": {
                        "line": 50,
                        "column": 4
                      },
                      "end": {
                        "line": 55,
                        "column": 5
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "ThisExpression",
                      "range": [
                        1501,
                        1505
                      ],
                      "loc": {
                        "start": {
                          "line": 56,
                          "column": 11
                        },
                        "end": {
                          "line": 56,
                          "column": 15
                        }
                      }
                    },
                    "range": [
                      1494,
                      1506
                    ],
                    "loc": {
                      "start": {
                        "line": 56,
                        "column": 4
                      },
                      "end": {
                        "line": 56,
                        "column": 16
                      }
                    }
                  }
                ],
                "range": [
                  1244,
                  1510
                ],
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 39
                  },
                  "end": {
                    "line": 57,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                1216,
                1510
              ],
              "loc": {
                "start": {
                  "line": 49,
                  "column": 11
                },
                "end": {
                  "line": 57,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              1207,
              1510
            ],
            "loc": {
              "start": {
                "line": 49,
                "column": 2
              },
              "end": {
                "line": 57,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value to set on the vertex\n   * @throws {DuplicateVertexError} when adding vertex whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  1016,
                  1204
                ],
                "loc": {
                  "start": {
                    "line": 44,
                    "column": 2
                  },
                  "end": {
                    "line": 48,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {values} array of values to add to the graph\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  1514,
                  1628
                ],
                "loc": {
                  "start": {
                    "line": 59,
                    "column": 2
                  },
                  "end": {
                    "line": 62,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "addVerticies",
              "range": [
                1631,
                1643
              ],
              "loc": {
                "start": {
                  "line": 63,
                  "column": 2
                },
                "end": {
                  "line": 63,
                  "column": 14
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "values",
                  "range": [
                    1644,
                    1650
                  ],
                  "loc": {
                    "start": {
                      "line": 63,
                      "column": 15
                    },
                    "end": {
                      "line": 63,
                      "column": 21
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "values",
                          "range": [
                            1657,
                            1663
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 4
                            },
                            "end": {
                              "line": 64,
                              "column": 10
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "forEach",
                          "range": [
                            1664,
                            1671
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 11
                            },
                            "end": {
                              "line": 64,
                              "column": 18
                            }
                          }
                        },
                        "range": [
                          1657,
                          1671
                        ],
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 4
                          },
                          "end": {
                            "line": 64,
                            "column": 18
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "value",
                              "range": [
                                1673,
                                1678
                              ],
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 20
                                },
                                "end": {
                                  "line": 64,
                                  "column": 25
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "ThisExpression",
                                      "range": [
                                        1691,
                                        1695
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 10
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "addVertex",
                                      "range": [
                                        1696,
                                        1705
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "range": [
                                      1691,
                                      1705
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "name": "value",
                                      "range": [
                                        1706,
                                        1711
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 26
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1691,
                                    1712
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 27
                                    }
                                  }
                                },
                                "range": [
                                  1691,
                                  1713
                                ],
                                "loc": {
                                  "start": {
                                    "line": 65,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 65,
                                    "column": 28
                                  }
                                }
                              }
                            ],
                            "range": [
                              1683,
                              1719
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 30
                              },
                              "end": {
                                "line": 66,
                                "column": 5
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            1672,
                            1719
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 19
                            },
                            "end": {
                              "line": 66,
                              "column": 5
                            }
                          }
                        }
                      ],
                      "range": [
                        1657,
                        1720
                      ],
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 4
                        },
                        "end": {
                          "line": 66,
                          "column": 6
                        }
                      }
                    },
                    "range": [
                      1657,
                      1721
                    ],
                    "loc": {
                      "start": {
                        "line": 64,
                        "column": 4
                      },
                      "end": {
                        "line": 66,
                        "column": 7
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "ThisExpression",
                      "range": [
                        1733,
                        1737
                      ],
                      "loc": {
                        "start": {
                          "line": 67,
                          "column": 11
                        },
                        "end": {
                          "line": 67,
                          "column": 15
                        }
                      }
                    },
                    "range": [
                      1726,
                      1738
                    ],
                    "loc": {
                      "start": {
                        "line": 67,
                        "column": 4
                      },
                      "end": {
                        "line": 67,
                        "column": 16
                      }
                    }
                  }
                ],
                "range": [
                  1651,
                  1742
                ],
                "loc": {
                  "start": {
                    "line": 63,
                    "column": 22
                  },
                  "end": {
                    "line": 68,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                1643,
                1742
              ],
              "loc": {
                "start": {
                  "line": 63,
                  "column": 14
                },
                "end": {
                  "line": 68,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              1631,
              1742
            ],
            "loc": {
              "start": {
                "line": 63,
                "column": 2
              },
              "end": {
                "line": 68,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {values} array of values to add to the graph\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  1514,
                  1628
                ],
                "loc": {
                  "start": {
                    "line": 59,
                    "column": 2
                  },
                  "end": {
                    "line": 62,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value\n   * @return {Vertex} instance of Vertex in graph with value, else undefined\n   ",
                "range": [
                  1746,
                  1858
                ],
                "loc": {
                  "start": {
                    "line": 70,
                    "column": 2
                  },
                  "end": {
                    "line": 73,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getVertexByValue",
              "range": [
                1861,
                1877
              ],
              "loc": {
                "start": {
                  "line": 74,
                  "column": 2
                },
                "end": {
                  "line": 74,
                  "column": 18
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "value",
                  "range": [
                    1878,
                    1883
                  ],
                  "loc": {
                    "start": {
                      "line": 74,
                      "column": 19
                    },
                    "end": {
                      "line": 74,
                      "column": 24
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "vertices",
                          "range": [
                            1894,
                            1902
                          ],
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 16
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                1905,
                                1909
                              ],
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 19
                                },
                                "end": {
                                  "line": 75,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getVertices",
                              "range": [
                                1910,
                                1921
                              ],
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 24
                                },
                                "end": {
                                  "line": 75,
                                  "column": 35
                                }
                              }
                            },
                            "range": [
                              1905,
                              1921
                            ],
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 19
                              },
                              "end": {
                                "line": 75,
                                "column": 35
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            1905,
                            1923
                          ],
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 19
                            },
                            "end": {
                              "line": 75,
                              "column": 37
                            }
                          }
                        },
                        "range": [
                          1894,
                          1923
                        ],
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 8
                          },
                          "end": {
                            "line": 75,
                            "column": 37
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      1890,
                      1924
                    ],
                    "loc": {
                      "start": {
                        "line": 75,
                        "column": 4
                      },
                      "end": {
                        "line": 75,
                        "column": 38
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            1933,
                            1941
                          ],
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 76,
                              "column": 16
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "vertices",
                              "range": [
                                1944,
                                1952
                              ],
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 19
                                },
                                "end": {
                                  "line": 76,
                                  "column": 27
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "filter",
                              "range": [
                                1953,
                                1959
                              ],
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 28
                                },
                                "end": {
                                  "line": 76,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              1944,
                              1959
                            ],
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 19
                              },
                              "end": {
                                "line": 76,
                                "column": 34
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "ArrowFunctionExpression",
                              "id": null,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "name": "vertex",
                                  "range": [
                                    1961,
                                    1967
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 42
                                    }
                                  }
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "ReturnStatement",
                                    "argument": {
                                      "type": "BinaryExpression",
                                      "operator": "===",
                                      "left": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "vertex",
                                          "range": [
                                            1987,
                                            1993
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            1994,
                                            1999
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "range": [
                                          1987,
                                          1999
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 77,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 77,
                                            "column": 25
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          2004,
                                          2009
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 77,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 77,
                                            "column": 35
                                          }
                                        }
                                      },
                                      "range": [
                                        1987,
                                        2009
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "range": [
                                      1980,
                                      2010
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 77,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 77,
                                        "column": 36
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  1972,
                                  2016
                                ],
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 5
                                  }
                                }
                              },
                              "generator": false,
                              "expression": false,
                              "range": [
                                1960,
                                2016
                              ],
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 35
                                },
                                "end": {
                                  "line": 78,
                                  "column": 5
                                }
                              }
                            }
                          ],
                          "range": [
                            1944,
                            2017
                          ],
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 19
                            },
                            "end": {
                              "line": 78,
                              "column": 6
                            }
                          }
                        },
                        "range": [
                          1933,
                          2017
                        ],
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 6
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      1929,
                      2018
                    ],
                    "loc": {
                      "start": {
                        "line": 76,
                        "column": 4
                      },
                      "end": {
                        "line": 78,
                        "column": 7
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "BinaryExpression",
                      "operator": ">",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            2028,
                            2036
                          ],
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "length",
                          "range": [
                            2037,
                            2043
                          ],
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 17
                            },
                            "end": {
                              "line": 80,
                              "column": 23
                            }
                          }
                        },
                        "range": [
                          2028,
                          2043
                        ],
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 8
                          },
                          "end": {
                            "line": 80,
                            "column": 23
                          }
                        }
                      },
                      "right": {
                        "type": "Literal",
                        "value": 0,
                        "raw": "0",
                        "range": [
                          2046,
                          2047
                        ],
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 26
                          },
                          "end": {
                            "line": 80,
                            "column": 27
                          }
                        }
                      },
                      "range": [
                        2028,
                        2047
                      ],
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 8
                        },
                        "end": {
                          "line": 80,
                          "column": 27
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "argument": {
                            "type": "MemberExpression",
                            "computed": true,
                            "object": {
                              "type": "Identifier",
                              "name": "matching",
                              "range": [
                                2063,
                                2071
                              ],
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 13
                                },
                                "end": {
                                  "line": 81,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Literal",
                              "value": 0,
                              "raw": "0",
                              "range": [
                                2072,
                                2073
                              ],
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 22
                                },
                                "end": {
                                  "line": 81,
                                  "column": 23
                                }
                              }
                            },
                            "range": [
                              2063,
                              2074
                            ],
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 13
                              },
                              "end": {
                                "line": 81,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            2056,
                            2075
                          ],
                          "loc": {
                            "start": {
                              "line": 81,
                              "column": 6
                            },
                            "end": {
                              "line": 81,
                              "column": 25
                            }
                          }
                        }
                      ],
                      "range": [
                        2048,
                        2081
                      ],
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 28
                        },
                        "end": {
                          "line": 82,
                          "column": 5
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      2024,
                      2081
                    ],
                    "loc": {
                      "start": {
                        "line": 80,
                        "column": 4
                      },
                      "end": {
                        "line": 82,
                        "column": 5
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "undefined",
                      "range": [
                        2094,
                        2103
                      ],
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 11
                        },
                        "end": {
                          "line": 84,
                          "column": 20
                        }
                      }
                    },
                    "range": [
                      2087,
                      2104
                    ],
                    "loc": {
                      "start": {
                        "line": 84,
                        "column": 4
                      },
                      "end": {
                        "line": 84,
                        "column": 21
                      }
                    }
                  }
                ],
                "range": [
                  1884,
                  2108
                ],
                "loc": {
                  "start": {
                    "line": 74,
                    "column": 25
                  },
                  "end": {
                    "line": 85,
                    "column": 3
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                1877,
                2108
              ],
              "loc": {
                "start": {
                  "line": 74,
                  "column": 18
                },
                "end": {
                  "line": 85,
                  "column": 3
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              1861,
              2108
            ],
            "loc": {
              "start": {
                "line": 74,
                "column": 2
              },
              "end": {
                "line": 85,
                "column": 3
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {value} value\n   * @return {Vertex} instance of Vertex in graph with value, else undefined\n   ",
                "range": [
                  1746,
                  1858
                ],
                "loc": {
                  "start": {
                    "line": 70,
                    "column": 2
                  },
                  "end": {
                    "line": 73,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {startVertex} Vertex (or value of Vertex) in graph to start\n   * @param {endVertex} Vertex (or value of Vertex) in graph to end\n   * @throws {DuplicateEdgeError} when adding edge whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  2112,
                  2389
                ],
                "loc": {
                  "start": {
                    "line": 87,
                    "column": 2
                  },
                  "end": {
                    "line": 92,
                    "column": 5
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "addEdge",
              "range": [
                2393,
                2400
              ],
              "loc": {
                "start": {
                  "line": 93,
                  "column": 3
                },
                "end": {
                  "line": 93,
                  "column": 10
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "startVertex",
                  "range": [
                    2401,
                    2412
                  ],
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 11
                    },
                    "end": {
                      "line": 93,
                      "column": 22
                    }
                  }
                },
                {
                  "type": "Identifier",
                  "name": "endVertex",
                  "range": [
                    2414,
                    2423
                  ],
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 24
                    },
                    "end": {
                      "line": 93,
                      "column": 33
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "UnaryExpression",
                      "operator": "!",
                      "argument": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "startVertex",
                          "range": [
                            2437,
                            2448
                          ],
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 11
                            },
                            "end": {
                              "line": 94,
                              "column": 22
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vertex",
                          "range": [
                            2460,
                            2466
                          ],
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 34
                            },
                            "end": {
                              "line": 94,
                              "column": 40
                            }
                          }
                        },
                        "range": [
                          2437,
                          2466
                        ],
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 11
                          },
                          "end": {
                            "line": 94,
                            "column": 40
                          }
                        }
                      },
                      "prefix": true,
                      "range": [
                        2435,
                        2467
                      ],
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 9
                        },
                        "end": {
                          "line": 94,
                          "column": 41
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "name": "startVertex",
                              "range": [
                                2477,
                                2488
                              ],
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 7
                                },
                                "end": {
                                  "line": 95,
                                  "column": 18
                                }
                              }
                            },
                            "right": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2491,
                                    2495
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 25
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "getVertexByValue",
                                  "range": [
                                    2496,
                                    2512
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 42
                                    }
                                  }
                                },
                                "range": [
                                  2491,
                                  2512
                                ],
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 42
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "startVertex",
                                  "range": [
                                    2513,
                                    2524
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 54
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2491,
                                2525
                              ],
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 21
                                },
                                "end": {
                                  "line": 95,
                                  "column": 55
                                }
                              }
                            },
                            "range": [
                              2477,
                              2525
                            ],
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 7
                              },
                              "end": {
                                "line": 95,
                                "column": 55
                              }
                            }
                          },
                          "range": [
                            2477,
                            2526
                          ],
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 7
                            },
                            "end": {
                              "line": 95,
                              "column": 56
                            }
                          }
                        }
                      ],
                      "range": [
                        2468,
                        2533
                      ],
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 42
                        },
                        "end": {
                          "line": 96,
                          "column": 6
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      2431,
                      2533
                    ],
                    "loc": {
                      "start": {
                        "line": 94,
                        "column": 5
                      },
                      "end": {
                        "line": 96,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "UnaryExpression",
                      "operator": "!",
                      "argument": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "endVertex",
                          "range": [
                            2546,
                            2555
                          ],
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 11
                            },
                            "end": {
                              "line": 98,
                              "column": 20
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vertex",
                          "range": [
                            2567,
                            2573
                          ],
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 32
                            },
                            "end": {
                              "line": 98,
                              "column": 38
                            }
                          }
                        },
                        "range": [
                          2546,
                          2573
                        ],
                        "loc": {
                          "start": {
                            "line": 98,
                            "column": 11
                          },
                          "end": {
                            "line": 98,
                            "column": 38
                          }
                        }
                      },
                      "prefix": true,
                      "range": [
                        2544,
                        2574
                      ],
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 9
                        },
                        "end": {
                          "line": 98,
                          "column": 39
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "name": "endVertex",
                              "range": [
                                2584,
                                2593
                              ],
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 7
                                },
                                "end": {
                                  "line": 99,
                                  "column": 16
                                }
                              }
                            },
                            "right": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    2596,
                                    2600
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 23
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "getVertexByValue",
                                  "range": [
                                    2601,
                                    2617
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 40
                                    }
                                  }
                                },
                                "range": [
                                  2596,
                                  2617
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 40
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "endVertex",
                                  "range": [
                                    2618,
                                    2627
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 50
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2596,
                                2628
                              ],
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 19
                                },
                                "end": {
                                  "line": 99,
                                  "column": 51
                                }
                              }
                            },
                            "range": [
                              2584,
                              2628
                            ],
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 7
                              },
                              "end": {
                                "line": 99,
                                "column": 51
                              }
                            }
                          },
                          "range": [
                            2584,
                            2629
                          ],
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 7
                            },
                            "end": {
                              "line": 99,
                              "column": 52
                            }
                          }
                        }
                      ],
                      "range": [
                        2575,
                        2636
                      ],
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 40
                        },
                        "end": {
                          "line": 100,
                          "column": 6
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      2540,
                      2636
                    ],
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 5
                      },
                      "end": {
                        "line": 100,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            2647,
                            2651
                          ],
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 9
                            },
                            "end": {
                              "line": 102,
                              "column": 13
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "hasEdge",
                          "range": [
                            2652,
                            2659
                          ],
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 14
                            },
                            "end": {
                              "line": 102,
                              "column": 21
                            }
                          }
                        },
                        "range": [
                          2647,
                          2659
                        ],
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 9
                          },
                          "end": {
                            "line": 102,
                            "column": 21
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "startVertex",
                            "range": [
                              2660,
                              2671
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 22
                              },
                              "end": {
                                "line": 102,
                                "column": 33
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "value",
                            "range": [
                              2672,
                              2677
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 34
                              },
                              "end": {
                                "line": 102,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            2660,
                            2677
                          ],
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 22
                            },
                            "end": {
                              "line": 102,
                              "column": 39
                            }
                          }
                        },
                        {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "endVertex",
                            "range": [
                              2679,
                              2688
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 41
                              },
                              "end": {
                                "line": 102,
                                "column": 50
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "value",
                            "range": [
                              2689,
                              2694
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 51
                              },
                              "end": {
                                "line": 102,
                                "column": 56
                              }
                            }
                          },
                          "range": [
                            2679,
                            2694
                          ],
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 41
                            },
                            "end": {
                              "line": 102,
                              "column": 56
                            }
                          }
                        }
                      ],
                      "range": [
                        2647,
                        2695
                      ],
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 9
                        },
                        "end": {
                          "line": 102,
                          "column": 57
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ThrowStatement",
                          "argument": {
                            "type": "NewExpression",
                            "callee": {
                              "type": "Identifier",
                              "name": "DuplicateEdgeError",
                              "range": [
                                2715,
                                2733
                              ],
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 17
                                },
                                "end": {
                                  "line": 103,
                                  "column": 35
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "BinaryExpression",
                                "operator": "+",
                                "left": {
                                  "type": "BinaryExpression",
                                  "operator": "+",
                                  "left": {
                                    "type": "BinaryExpression",
                                    "operator": "+",
                                    "left": {
                                      "type": "BinaryExpression",
                                      "operator": "+",
                                      "left": {
                                        "type": "Literal",
                                        "value": "Cannot add duplicate edge between '",
                                        "raw": "\"Cannot add duplicate edge between '\"",
                                        "range": [
                                          2734,
                                          2771
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 73
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "startVertex",
                                          "range": [
                                            2774,
                                            2785
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 103,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 103,
                                              "column": 87
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            2786,
                                            2791
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 103,
                                              "column": 88
                                            },
                                            "end": {
                                              "line": 103,
                                              "column": 93
                                            }
                                          }
                                        },
                                        "range": [
                                          2774,
                                          2791
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 93
                                          }
                                        }
                                      },
                                      "range": [
                                        2734,
                                        2791
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 93
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": "' and '",
                                      "raw": "\"' and '\"",
                                      "range": [
                                        2794,
                                        2803
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 105
                                        }
                                      }
                                    },
                                    "range": [
                                      2734,
                                      2803
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 105
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "endVertex",
                                      "range": [
                                        2806,
                                        2815
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 108
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 117
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "value",
                                      "range": [
                                        2816,
                                        2821
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 118
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 123
                                        }
                                      }
                                    },
                                    "range": [
                                      2806,
                                      2821
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 108
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 123
                                      }
                                    }
                                  },
                                  "range": [
                                    2734,
                                    2821
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 123
                                    }
                                  }
                                },
                                "right": {
                                  "type": "Literal",
                                  "value": "' to graph.",
                                  "raw": "\"' to graph.\"",
                                  "range": [
                                    2824,
                                    2837
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 126
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 139
                                    }
                                  }
                                },
                                "range": [
                                  2734,
                                  2837
                                ],
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 36
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 139
                                  }
                                }
                              }
                            ],
                            "range": [
                              2711,
                              2838
                            ],
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 13
                              },
                              "end": {
                                "line": 103,
                                "column": 140
                              }
                            }
                          },
                          "range": [
                            2705,
                            2839
                          ],
                          "loc": {
                            "start": {
                              "line": 103,
                              "column": 7
                            },
                            "end": {
                              "line": 103,
                              "column": 141
                            }
                          }
                        }
                      ],
                      "range": [
                        2696,
                        2846
                      ],
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 58
                        },
                        "end": {
                          "line": 104,
                          "column": 6
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      2643,
                      2846
                    ],
                    "loc": {
                      "start": {
                        "line": 102,
                        "column": 5
                      },
                      "end": {
                        "line": 104,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "edge",
                          "range": [
                            2857,
                            2861
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 9
                            },
                            "end": {
                              "line": 106,
                              "column": 13
                            }
                          }
                        },
                        "init": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Edge",
                            "range": [
                              2868,
                              2872
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 20
                              },
                              "end": {
                                "line": 106,
                                "column": 24
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "name": "startVertex",
                              "range": [
                                2873,
                                2884
                              ],
                              "loc": {
                                "start": {
                                  "line": 106,
                                  "column": 25
                                },
                                "end": {
                                  "line": 106,
                                  "column": 36
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "endVertex",
                              "range": [
                                2886,
                                2895
                              ],
                              "loc": {
                                "start": {
                                  "line": 106,
                                  "column": 38
                                },
                                "end": {
                                  "line": 106,
                                  "column": 47
                                }
                              }
                            }
                          ],
                          "range": [
                            2864,
                            2896
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 16
                            },
                            "end": {
                              "line": 106,
                              "column": 48
                            }
                          }
                        },
                        "range": [
                          2857,
                          2896
                        ],
                        "loc": {
                          "start": {
                            "line": 106,
                            "column": 9
                          },
                          "end": {
                            "line": 106,
                            "column": 48
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      2853,
                      2897
                    ],
                    "loc": {
                      "start": {
                        "line": 106,
                        "column": 5
                      },
                      "end": {
                        "line": 106,
                        "column": 49
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              2903,
                              2907
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 5
                              },
                              "end": {
                                "line": 107,
                                "column": 9
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_edges",
                            "range": [
                              2908,
                              2914
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 10
                              },
                              "end": {
                                "line": 107,
                                "column": 16
                              }
                            }
                          },
                          "range": [
                            2903,
                            2914
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 5
                            },
                            "end": {
                              "line": 107,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "push",
                          "range": [
                            2915,
                            2919
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 17
                            },
                            "end": {
                              "line": 107,
                              "column": 21
                            }
                          }
                        },
                        "range": [
                          2903,
                          2919
                        ],
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 5
                          },
                          "end": {
                            "line": 107,
                            "column": 21
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "edge",
                          "range": [
                            2920,
                            2924
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 22
                            },
                            "end": {
                              "line": 107,
                              "column": 26
                            }
                          }
                        }
                      ],
                      "range": [
                        2903,
                        2925
                      ],
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 5
                        },
                        "end": {
                          "line": 107,
                          "column": 27
                        }
                      }
                    },
                    "range": [
                      2903,
                      2926
                    ],
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 5
                      },
                      "end": {
                        "line": 107,
                        "column": 28
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "Line",
                        "value": " since this undirected graph, edges must go both ways",
                        "range": [
                          2933,
                          2988
                        ],
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 5
                          },
                          "end": {
                            "line": 109,
                            "column": 60
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "reverseEdge",
                          "range": [
                            2998,
                            3009
                          ],
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 9
                            },
                            "end": {
                              "line": 110,
                              "column": 20
                            }
                          }
                        },
                        "init": {
                          "type": "NewExpression",
                          "callee": {
                            "type": "Identifier",
                            "name": "Edge",
                            "range": [
                              3016,
                              3020
                            ],
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 27
                              },
                              "end": {
                                "line": 110,
                                "column": 31
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "name": "endVertex",
                              "range": [
                                3021,
                                3030
                              ],
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 32
                                },
                                "end": {
                                  "line": 110,
                                  "column": 41
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "startVertex",
                              "range": [
                                3032,
                                3043
                              ],
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 43
                                },
                                "end": {
                                  "line": 110,
                                  "column": 54
                                }
                              }
                            }
                          ],
                          "range": [
                            3012,
                            3044
                          ],
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 23
                            },
                            "end": {
                              "line": 110,
                              "column": 55
                            }
                          }
                        },
                        "range": [
                          2998,
                          3044
                        ],
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 9
                          },
                          "end": {
                            "line": 110,
                            "column": 55
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      2994,
                      3045
                    ],
                    "loc": {
                      "start": {
                        "line": 110,
                        "column": 5
                      },
                      "end": {
                        "line": 110,
                        "column": 56
                      }
                    },
                    "leadingComments": [
                      {
                        "type": "Line",
                        "value": " since this undirected graph, edges must go both ways",
                        "range": [
                          2933,
                          2988
                        ],
                        "loc": {
                          "start": {
                            "line": 109,
                            "column": 5
                          },
                          "end": {
                            "line": 109,
                            "column": 60
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              3051,
                              3055
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 5
                              },
                              "end": {
                                "line": 111,
                                "column": 9
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_edges",
                            "range": [
                              3056,
                              3062
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 10
                              },
                              "end": {
                                "line": 111,
                                "column": 16
                              }
                            }
                          },
                          "range": [
                            3051,
                            3062
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 5
                            },
                            "end": {
                              "line": 111,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "push",
                          "range": [
                            3063,
                            3067
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 17
                            },
                            "end": {
                              "line": 111,
                              "column": 21
                            }
                          }
                        },
                        "range": [
                          3051,
                          3067
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 5
                          },
                          "end": {
                            "line": 111,
                            "column": 21
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "name": "reverseEdge",
                          "range": [
                            3068,
                            3079
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 22
                            },
                            "end": {
                              "line": 111,
                              "column": 33
                            }
                          }
                        }
                      ],
                      "range": [
                        3051,
                        3080
                      ],
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 5
                        },
                        "end": {
                          "line": 111,
                          "column": 34
                        }
                      }
                    },
                    "range": [
                      3051,
                      3081
                    ],
                    "loc": {
                      "start": {
                        "line": 111,
                        "column": 5
                      },
                      "end": {
                        "line": 111,
                        "column": 35
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "ThisExpression",
                      "range": [
                        3095,
                        3099
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 12
                        },
                        "end": {
                          "line": 113,
                          "column": 16
                        }
                      }
                    },
                    "range": [
                      3088,
                      3100
                    ],
                    "loc": {
                      "start": {
                        "line": 113,
                        "column": 5
                      },
                      "end": {
                        "line": 113,
                        "column": 17
                      }
                    }
                  }
                ],
                "range": [
                  2424,
                  3105
                ],
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 34
                  },
                  "end": {
                    "line": 114,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                2400,
                3105
              ],
              "loc": {
                "start": {
                  "line": 93,
                  "column": 10
                },
                "end": {
                  "line": 114,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              2393,
              3105
            ],
            "loc": {
              "start": {
                "line": 93,
                "column": 3
              },
              "end": {
                "line": 114,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n   * @param {startVertex} Vertex (or value of Vertex) in graph to start\n   * @param {endVertex} Vertex (or value of Vertex) in graph to end\n   * @throws {DuplicateEdgeError} when adding edge whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                "range": [
                  2112,
                  2389
                ],
                "loc": {
                  "start": {
                    "line": 87,
                    "column": 2
                  },
                  "end": {
                    "line": 92,
                    "column": 5
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} array of Edge instances present in Graph.\n    ",
                "range": [
                  3110,
                  3184
                ],
                "loc": {
                  "start": {
                    "line": 116,
                    "column": 3
                  },
                  "end": {
                    "line": 118,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getEdges",
              "range": [
                3188,
                3196
              ],
              "loc": {
                "start": {
                  "line": 119,
                  "column": 3
                },
                "end": {
                  "line": 119,
                  "column": 11
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "MemberExpression",
                      "computed": false,
                      "object": {
                        "type": "ThisExpression",
                        "range": [
                          3212,
                          3216
                        ],
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 12
                          },
                          "end": {
                            "line": 120,
                            "column": 16
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "name": "_edges",
                        "range": [
                          3217,
                          3223
                        ],
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 17
                          },
                          "end": {
                            "line": 120,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        3212,
                        3223
                      ],
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 12
                        },
                        "end": {
                          "line": 120,
                          "column": 23
                        }
                      }
                    },
                    "range": [
                      3205,
                      3224
                    ],
                    "loc": {
                      "start": {
                        "line": 120,
                        "column": 5
                      },
                      "end": {
                        "line": 120,
                        "column": 24
                      }
                    }
                  }
                ],
                "range": [
                  3198,
                  3229
                ],
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 13
                  },
                  "end": {
                    "line": 121,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                3196,
                3229
              ],
              "loc": {
                "start": {
                  "line": 119,
                  "column": 11
                },
                "end": {
                  "line": 121,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              3188,
              3229
            ],
            "loc": {
              "start": {
                "line": 119,
                "column": 3
              },
              "end": {
                "line": 121,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} array of Edge instances present in Graph.\n    ",
                "range": [
                  3110,
                  3184
                ],
                "loc": {
                  "start": {
                    "line": 116,
                    "column": 3
                  },
                  "end": {
                    "line": 118,
                    "column": 6
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @param {startValue} start value of edge to locate\n    * @param {endValue} end value of edge to locate\n    * @return {Edge} returns Edge instance in Graph if exists, otherwise returns undefined\n    ",
                "range": [
                  3234,
                  3443
                ],
                "loc": {
                  "start": {
                    "line": 123,
                    "column": 3
                  },
                  "end": {
                    "line": 127,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getEdgeByValues",
              "range": [
                3447,
                3462
              ],
              "loc": {
                "start": {
                  "line": 128,
                  "column": 3
                },
                "end": {
                  "line": 128,
                  "column": 18
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "startValue",
                  "range": [
                    3463,
                    3473
                  ],
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 19
                    },
                    "end": {
                      "line": 128,
                      "column": 29
                    }
                  }
                },
                {
                  "type": "Identifier",
                  "name": "endValue",
                  "range": [
                    3475,
                    3483
                  ],
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 31
                    },
                    "end": {
                      "line": 128,
                      "column": 39
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "edges",
                          "range": [
                            3495,
                            3500
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 9
                            },
                            "end": {
                              "line": 129,
                              "column": 14
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                3503,
                                3507
                              ],
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 17
                                },
                                "end": {
                                  "line": 129,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getEdges",
                              "range": [
                                3508,
                                3516
                              ],
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 22
                                },
                                "end": {
                                  "line": 129,
                                  "column": 30
                                }
                              }
                            },
                            "range": [
                              3503,
                              3516
                            ],
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 17
                              },
                              "end": {
                                "line": 129,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            3503,
                            3518
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 17
                            },
                            "end": {
                              "line": 129,
                              "column": 32
                            }
                          }
                        },
                        "range": [
                          3495,
                          3518
                        ],
                        "loc": {
                          "start": {
                            "line": 129,
                            "column": 9
                          },
                          "end": {
                            "line": 129,
                            "column": 32
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      3491,
                      3519
                    ],
                    "loc": {
                      "start": {
                        "line": 129,
                        "column": 5
                      },
                      "end": {
                        "line": 129,
                        "column": 33
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            3529,
                            3537
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 9
                            },
                            "end": {
                              "line": 130,
                              "column": 17
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "edges",
                              "range": [
                                3540,
                                3545
                              ],
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 20
                                },
                                "end": {
                                  "line": 130,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "filter",
                              "range": [
                                3546,
                                3552
                              ],
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 26
                                },
                                "end": {
                                  "line": 130,
                                  "column": 32
                                }
                              }
                            },
                            "range": [
                              3540,
                              3552
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 20
                              },
                              "end": {
                                "line": 130,
                                "column": 32
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "ArrowFunctionExpression",
                              "id": null,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "name": "edge",
                                  "range": [
                                    3554,
                                    3558
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 130,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 130,
                                      "column": 38
                                    }
                                  }
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "ReturnStatement",
                                    "argument": {
                                      "type": "LogicalExpression",
                                      "operator": "&&",
                                      "left": {
                                        "type": "BinaryExpression",
                                        "operator": "===",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "edge",
                                              "range": [
                                                3579,
                                                3583
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 18
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "startVertex",
                                              "range": [
                                                3584,
                                                3595
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 30
                                                }
                                              }
                                            },
                                            "range": [
                                              3579,
                                              3595
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 30
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              3596,
                                              3601
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            3579,
                                            3601
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "name": "startValue",
                                          "range": [
                                            3606,
                                            3616
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 51
                                            }
                                          }
                                        },
                                        "range": [
                                          3579,
                                          3616
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 131,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 131,
                                            "column": 51
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "BinaryExpression",
                                        "operator": "===",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "edge",
                                              "range": [
                                                3620,
                                                3624
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 59
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "endVertex",
                                              "range": [
                                                3625,
                                                3634
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 69
                                                }
                                              }
                                            },
                                            "range": [
                                              3620,
                                              3634
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 69
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              3635,
                                              3640
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 70
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 75
                                              }
                                            }
                                          },
                                          "range": [
                                            3620,
                                            3640
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 75
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "name": "endValue",
                                          "range": [
                                            3645,
                                            3653
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 80
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 88
                                            }
                                          }
                                        },
                                        "range": [
                                          3620,
                                          3653
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 131,
                                            "column": 55
                                          },
                                          "end": {
                                            "line": 131,
                                            "column": 88
                                          }
                                        }
                                      },
                                      "range": [
                                        3579,
                                        3653
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 131,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 131,
                                          "column": 88
                                        }
                                      }
                                    },
                                    "range": [
                                      3572,
                                      3654
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 131,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 131,
                                        "column": 89
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  3563,
                                  3661
                                ],
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 132,
                                    "column": 6
                                  }
                                }
                              },
                              "generator": false,
                              "expression": false,
                              "range": [
                                3553,
                                3661
                              ],
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 33
                                },
                                "end": {
                                  "line": 132,
                                  "column": 6
                                }
                              }
                            }
                          ],
                          "range": [
                            3540,
                            3662
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 20
                            },
                            "end": {
                              "line": 132,
                              "column": 7
                            }
                          }
                        },
                        "range": [
                          3529,
                          3662
                        ],
                        "loc": {
                          "start": {
                            "line": 130,
                            "column": 9
                          },
                          "end": {
                            "line": 132,
                            "column": 7
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      3525,
                      3663
                    ],
                    "loc": {
                      "start": {
                        "line": 130,
                        "column": 5
                      },
                      "end": {
                        "line": 132,
                        "column": 8
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "BinaryExpression",
                      "operator": ">",
                      "left": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            3674,
                            3682
                          ],
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 9
                            },
                            "end": {
                              "line": 134,
                              "column": 17
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "length",
                          "range": [
                            3683,
                            3689
                          ],
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 18
                            },
                            "end": {
                              "line": 134,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          3674,
                          3689
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 9
                          },
                          "end": {
                            "line": 134,
                            "column": 24
                          }
                        }
                      },
                      "right": {
                        "type": "Literal",
                        "value": 0,
                        "raw": "0",
                        "range": [
                          3692,
                          3693
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 27
                          },
                          "end": {
                            "line": 134,
                            "column": 28
                          }
                        }
                      },
                      "range": [
                        3674,
                        3693
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 9
                        },
                        "end": {
                          "line": 134,
                          "column": 28
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ReturnStatement",
                          "argument": {
                            "type": "MemberExpression",
                            "computed": true,
                            "object": {
                              "type": "Identifier",
                              "name": "matching",
                              "range": [
                                3710,
                                3718
                              ],
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 14
                                },
                                "end": {
                                  "line": 135,
                                  "column": 22
                                }
                              }
                            },
                            "property": {
                              "type": "Literal",
                              "value": 0,
                              "raw": "0",
                              "range": [
                                3719,
                                3720
                              ],
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 23
                                },
                                "end": {
                                  "line": 135,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              3710,
                              3721
                            ],
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 14
                              },
                              "end": {
                                "line": 135,
                                "column": 25
                              }
                            }
                          },
                          "range": [
                            3703,
                            3722
                          ],
                          "loc": {
                            "start": {
                              "line": 135,
                              "column": 7
                            },
                            "end": {
                              "line": 135,
                              "column": 26
                            }
                          }
                        }
                      ],
                      "range": [
                        3694,
                        3729
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 29
                        },
                        "end": {
                          "line": 136,
                          "column": 6
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      3670,
                      3729
                    ],
                    "loc": {
                      "start": {
                        "line": 134,
                        "column": 5
                      },
                      "end": {
                        "line": 136,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "undefined",
                      "range": [
                        3743,
                        3752
                      ],
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 12
                        },
                        "end": {
                          "line": 138,
                          "column": 21
                        }
                      }
                    },
                    "range": [
                      3736,
                      3753
                    ],
                    "loc": {
                      "start": {
                        "line": 138,
                        "column": 5
                      },
                      "end": {
                        "line": 138,
                        "column": 22
                      }
                    }
                  }
                ],
                "range": [
                  3484,
                  3758
                ],
                "loc": {
                  "start": {
                    "line": 128,
                    "column": 40
                  },
                  "end": {
                    "line": 139,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                3462,
                3758
              ],
              "loc": {
                "start": {
                  "line": 128,
                  "column": 18
                },
                "end": {
                  "line": 139,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              3447,
              3758
            ],
            "loc": {
              "start": {
                "line": 128,
                "column": 3
              },
              "end": {
                "line": 139,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @param {startValue} start value of edge to locate\n    * @param {endValue} end value of edge to locate\n    * @return {Edge} returns Edge instance in Graph if exists, otherwise returns undefined\n    ",
                "range": [
                  3234,
                  3443
                ],
                "loc": {
                  "start": {
                    "line": 123,
                    "column": 3
                  },
                  "end": {
                    "line": 127,
                    "column": 6
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @param {startVertex} start value of edge to locate\n    * @param {endVertex} end value of edge to locate\n    * @return {Boolean} true if any edge has these start and end values else false\n    ",
                "range": [
                  3763,
                  3966
                ],
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 3
                  },
                  "end": {
                    "line": 145,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "hasEdge",
              "range": [
                3970,
                3977
              ],
              "loc": {
                "start": {
                  "line": 146,
                  "column": 3
                },
                "end": {
                  "line": 146,
                  "column": 10
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "startVertex",
                  "range": [
                    3978,
                    3989
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 11
                    },
                    "end": {
                      "line": 146,
                      "column": 22
                    }
                  }
                },
                {
                  "type": "Identifier",
                  "name": "endVertex",
                  "range": [
                    3991,
                    4000
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 24
                    },
                    "end": {
                      "line": 146,
                      "column": 33
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "UnaryExpression",
                      "operator": "!",
                      "argument": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                4017,
                                4021
                              ],
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 14
                                },
                                "end": {
                                  "line": 147,
                                  "column": 18
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getEdgeByValues",
                              "range": [
                                4022,
                                4037
                              ],
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 19
                                },
                                "end": {
                                  "line": 147,
                                  "column": 34
                                }
                              }
                            },
                            "range": [
                              4017,
                              4037
                            ],
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 14
                              },
                              "end": {
                                "line": 147,
                                "column": 34
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "name": "startVertex",
                              "range": [
                                4038,
                                4049
                              ],
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 35
                                },
                                "end": {
                                  "line": 147,
                                  "column": 46
                                }
                              }
                            },
                            {
                              "type": "Identifier",
                              "name": "endVertex",
                              "range": [
                                4051,
                                4060
                              ],
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 48
                                },
                                "end": {
                                  "line": 147,
                                  "column": 57
                                }
                              }
                            }
                          ],
                          "range": [
                            4017,
                            4061
                          ],
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 14
                            },
                            "end": {
                              "line": 147,
                              "column": 58
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          4016,
                          4061
                        ],
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 13
                          },
                          "end": {
                            "line": 147,
                            "column": 58
                          }
                        }
                      },
                      "prefix": true,
                      "range": [
                        4015,
                        4061
                      ],
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 12
                        },
                        "end": {
                          "line": 147,
                          "column": 58
                        }
                      }
                    },
                    "range": [
                      4008,
                      4062
                    ],
                    "loc": {
                      "start": {
                        "line": 147,
                        "column": 5
                      },
                      "end": {
                        "line": 147,
                        "column": 59
                      }
                    }
                  }
                ],
                "range": [
                  4001,
                  4067
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 34
                  },
                  "end": {
                    "line": 148,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                3977,
                4067
              ],
              "loc": {
                "start": {
                  "line": 146,
                  "column": 10
                },
                "end": {
                  "line": 148,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              3970,
              4067
            ],
            "loc": {
              "start": {
                "line": 146,
                "column": 3
              },
              "end": {
                "line": 148,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @param {startVertex} start value of edge to locate\n    * @param {endVertex} end value of edge to locate\n    * @return {Boolean} true if any edge has these start and end values else false\n    ",
                "range": [
                  3763,
                  3966
                ],
                "loc": {
                  "start": {
                    "line": 141,
                    "column": 3
                  },
                  "end": {
                    "line": 145,
                    "column": 6
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} array of arrays; each entry represents adjacency for row;\n    *         each entry in each sub-array represents adjacency for column;\n    *         if A[i][j] = 1, there is an edge from i to j.\n    ",
                "range": [
                  4072,
                  4298
                ],
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 3
                  },
                  "end": {
                    "line": 154,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getAdjacencyMatrix",
              "range": [
                4302,
                4320
              ],
              "loc": {
                "start": {
                  "line": 155,
                  "column": 3
                },
                "end": {
                  "line": 155,
                  "column": 21
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "matrix",
                          "range": [
                            4333,
                            4339
                          ],
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 9
                            },
                            "end": {
                              "line": 156,
                              "column": 15
                            }
                          }
                        },
                        "init": {
                          "type": "ArrayExpression",
                          "elements": [],
                          "range": [
                            4342,
                            4344
                          ],
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 18
                            },
                            "end": {
                              "line": 156,
                              "column": 20
                            }
                          }
                        },
                        "range": [
                          4333,
                          4344
                        ],
                        "loc": {
                          "start": {
                            "line": 156,
                            "column": 9
                          },
                          "end": {
                            "line": 156,
                            "column": 20
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      4329,
                      4345
                    ],
                    "loc": {
                      "start": {
                        "line": 156,
                        "column": 5
                      },
                      "end": {
                        "line": 156,
                        "column": 21
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "vertices",
                          "range": [
                            4355,
                            4363
                          ],
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 9
                            },
                            "end": {
                              "line": 157,
                              "column": 17
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                4366,
                                4370
                              ],
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 20
                                },
                                "end": {
                                  "line": 157,
                                  "column": 24
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getVertices",
                              "range": [
                                4371,
                                4382
                              ],
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 25
                                },
                                "end": {
                                  "line": 157,
                                  "column": 36
                                }
                              }
                            },
                            "range": [
                              4366,
                              4382
                            ],
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 20
                              },
                              "end": {
                                "line": 157,
                                "column": 36
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            4366,
                            4384
                          ],
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 20
                            },
                            "end": {
                              "line": 157,
                              "column": 38
                            }
                          }
                        },
                        "range": [
                          4355,
                          4384
                        ],
                        "loc": {
                          "start": {
                            "line": 157,
                            "column": 9
                          },
                          "end": {
                            "line": 157,
                            "column": 38
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      4351,
                      4385
                    ],
                    "loc": {
                      "start": {
                        "line": 157,
                        "column": 5
                      },
                      "end": {
                        "line": 157,
                        "column": 39
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "Line",
                        "value": " where N = number of vertices, initialize N X N zero matrix",
                        "range": [
                          4391,
                          4452
                        ],
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 5
                          },
                          "end": {
                            "line": 158,
                            "column": 66
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "vertices",
                          "range": [
                            4458,
                            4466
                          ],
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 5
                            },
                            "end": {
                              "line": 159,
                              "column": 13
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "forEach",
                          "range": [
                            4467,
                            4474
                          ],
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 14
                            },
                            "end": {
                              "line": 159,
                              "column": 21
                            }
                          }
                        },
                        "range": [
                          4458,
                          4474
                        ],
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 5
                          },
                          "end": {
                            "line": 159,
                            "column": 21
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "vertex",
                              "range": [
                                4476,
                                4482
                              ],
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 23
                                },
                                "end": {
                                  "line": 159,
                                  "column": 29
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "CallExpression",
                                  "callee": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "matrix",
                                      "range": [
                                        4495,
                                        4501
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "push",
                                      "range": [
                                        4502,
                                        4506
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 17
                                        }
                                      }
                                    },
                                    "range": [
                                      4495,
                                      4506
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 17
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "NewExpression",
                                          "callee": {
                                            "type": "Identifier",
                                            "name": "Array",
                                            "range": [
                                              4511,
                                              4516
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 27
                                              }
                                            }
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "vertices",
                                                "range": [
                                                  4517,
                                                  4525
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 160,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 160,
                                                    "column": 36
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "length",
                                                "range": [
                                                  4526,
                                                  4532
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 160,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 160,
                                                    "column": 43
                                                  }
                                                }
                                              },
                                              "range": [
                                                4517,
                                                4532
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 160,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 160,
                                                  "column": 43
                                                }
                                              }
                                            }
                                          ],
                                          "range": [
                                            4507,
                                            4533
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "fill",
                                          "range": [
                                            4534,
                                            4538
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 49
                                            }
                                          }
                                        },
                                        "range": [
                                          4507,
                                          4538
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 49
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Literal",
                                          "value": 0,
                                          "raw": "0",
                                          "range": [
                                            4539,
                                            4540
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 51
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4507,
                                        4541
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 52
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    4495,
                                    4542
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 53
                                    }
                                  }
                                },
                                "range": [
                                  4495,
                                  4543
                                ],
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 54
                                  }
                                }
                              }
                            ],
                            "range": [
                              4487,
                              4550
                            ],
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 34
                              },
                              "end": {
                                "line": 161,
                                "column": 6
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            4475,
                            4550
                          ],
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 22
                            },
                            "end": {
                              "line": 161,
                              "column": 6
                            }
                          }
                        }
                      ],
                      "range": [
                        4458,
                        4551
                      ],
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 5
                        },
                        "end": {
                          "line": 161,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      4458,
                      4552
                    ],
                    "loc": {
                      "start": {
                        "line": 159,
                        "column": 5
                      },
                      "end": {
                        "line": 161,
                        "column": 8
                      }
                    },
                    "leadingComments": [
                      {
                        "type": "Line",
                        "value": " where N = number of vertices, initialize N X N zero matrix",
                        "range": [
                          4391,
                          4452
                        ],
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 5
                          },
                          "end": {
                            "line": 158,
                            "column": 66
                          }
                        }
                      }
                    ],
                    "trailingComments": [
                      {
                        "type": "Line",
                        "value": " if edge exists for A[i][j] (and A[j][i]) set cell to 1",
                        "range": [
                          4559,
                          4616
                        ],
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 5
                          },
                          "end": {
                            "line": 163,
                            "column": 62
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "edges",
                          "range": [
                            4626,
                            4631
                          ],
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 9
                            },
                            "end": {
                              "line": 164,
                              "column": 14
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                4634,
                                4638
                              ],
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 17
                                },
                                "end": {
                                  "line": 164,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getEdges",
                              "range": [
                                4639,
                                4647
                              ],
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 22
                                },
                                "end": {
                                  "line": 164,
                                  "column": 30
                                }
                              }
                            },
                            "range": [
                              4634,
                              4647
                            ],
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 17
                              },
                              "end": {
                                "line": 164,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            4634,
                            4649
                          ],
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 17
                            },
                            "end": {
                              "line": 164,
                              "column": 32
                            }
                          }
                        },
                        "range": [
                          4626,
                          4649
                        ],
                        "loc": {
                          "start": {
                            "line": 164,
                            "column": 9
                          },
                          "end": {
                            "line": 164,
                            "column": 32
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      4622,
                      4650
                    ],
                    "loc": {
                      "start": {
                        "line": 164,
                        "column": 5
                      },
                      "end": {
                        "line": 164,
                        "column": 33
                      }
                    },
                    "leadingComments": [
                      {
                        "type": "Line",
                        "value": " if edge exists for A[i][j] (and A[j][i]) set cell to 1",
                        "range": [
                          4559,
                          4616
                        ],
                        "loc": {
                          "start": {
                            "line": 163,
                            "column": 5
                          },
                          "end": {
                            "line": 163,
                            "column": 62
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "vertexValues",
                          "range": [
                            4660,
                            4672
                          ],
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 9
                            },
                            "end": {
                              "line": 165,
                              "column": 21
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                4675,
                                4679
                              ],
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 24
                                },
                                "end": {
                                  "line": 165,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getVertexValues",
                              "range": [
                                4680,
                                4695
                              ],
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 29
                                },
                                "end": {
                                  "line": 165,
                                  "column": 44
                                }
                              }
                            },
                            "range": [
                              4675,
                              4695
                            ],
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 24
                              },
                              "end": {
                                "line": 165,
                                "column": 44
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            4675,
                            4697
                          ],
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 24
                            },
                            "end": {
                              "line": 165,
                              "column": 46
                            }
                          }
                        },
                        "range": [
                          4660,
                          4697
                        ],
                        "loc": {
                          "start": {
                            "line": 165,
                            "column": 9
                          },
                          "end": {
                            "line": 165,
                            "column": 46
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      4656,
                      4698
                    ],
                    "loc": {
                      "start": {
                        "line": 165,
                        "column": 5
                      },
                      "end": {
                        "line": 165,
                        "column": 47
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "edges",
                          "range": [
                            4704,
                            4709
                          ],
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 5
                            },
                            "end": {
                              "line": 166,
                              "column": 10
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "forEach",
                          "range": [
                            4710,
                            4717
                          ],
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 11
                            },
                            "end": {
                              "line": 166,
                              "column": 18
                            }
                          }
                        },
                        "range": [
                          4704,
                          4717
                        ],
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 5
                          },
                          "end": {
                            "line": 166,
                            "column": 18
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "edge",
                              "range": [
                                4719,
                                4723
                              ],
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 20
                                },
                                "end": {
                                  "line": 166,
                                  "column": 24
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "startValue",
                                      "range": [
                                        4741,
                                        4751
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 21
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "edge",
                                          "range": [
                                            4754,
                                            4758
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 28
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "startVertex",
                                          "range": [
                                            4759,
                                            4770
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 40
                                            }
                                          }
                                        },
                                        "range": [
                                          4754,
                                          4770
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 40
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          4771,
                                          4776
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 46
                                          }
                                        }
                                      },
                                      "range": [
                                        4754,
                                        4776
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 46
                                        }
                                      }
                                    },
                                    "range": [
                                      4741,
                                      4776
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 167,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 167,
                                        "column": 46
                                      }
                                    }
                                  }
                                ],
                                "kind": "let",
                                "range": [
                                  4737,
                                  4777
                                ],
                                "loc": {
                                  "start": {
                                    "line": 167,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 167,
                                    "column": 47
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "endValue",
                                      "range": [
                                        4789,
                                        4797
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "edge",
                                          "range": [
                                            4800,
                                            4804
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 26
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "endVertex",
                                          "range": [
                                            4805,
                                            4814
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 27
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "range": [
                                          4800,
                                          4814
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          4815,
                                          4820
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 37
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 42
                                          }
                                        }
                                      },
                                      "range": [
                                        4800,
                                        4820
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 42
                                        }
                                      }
                                    },
                                    "range": [
                                      4789,
                                      4820
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 168,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 168,
                                        "column": 42
                                      }
                                    }
                                  }
                                ],
                                "kind": "let",
                                "range": [
                                  4785,
                                  4821
                                ],
                                "loc": {
                                  "start": {
                                    "line": 168,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 168,
                                    "column": 43
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "startIndex",
                                      "range": [
                                        4833,
                                        4843
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 21
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "vertexValues",
                                          "range": [
                                            4846,
                                            4858
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "indexOf",
                                          "range": [
                                            4859,
                                            4866
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "range": [
                                          4846,
                                          4866
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 44
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "startValue",
                                          "range": [
                                            4867,
                                            4877
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 45
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 55
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4846,
                                        4878
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 56
                                        }
                                      }
                                    },
                                    "range": [
                                      4833,
                                      4878
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 56
                                      }
                                    }
                                  }
                                ],
                                "kind": "let",
                                "range": [
                                  4829,
                                  4879
                                ],
                                "loc": {
                                  "start": {
                                    "line": 169,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 169,
                                    "column": 57
                                  }
                                }
                              },
                              {
                                "type": "VariableDeclaration",
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "id": {
                                      "type": "Identifier",
                                      "name": "endIndex",
                                      "range": [
                                        4891,
                                        4899
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 19
                                        }
                                      }
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "vertexValues",
                                          "range": [
                                            4902,
                                            4914
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 34
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "indexOf",
                                          "range": [
                                            4915,
                                            4922
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "range": [
                                          4902,
                                          4922
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 42
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "endValue",
                                          "range": [
                                            4923,
                                            4931
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 51
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        4902,
                                        4932
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 52
                                        }
                                      }
                                    },
                                    "range": [
                                      4891,
                                      4932
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 52
                                      }
                                    }
                                  }
                                ],
                                "kind": "let",
                                "range": [
                                  4887,
                                  4933
                                ],
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 170,
                                    "column": 53
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": true,
                                    "object": {
                                      "type": "MemberExpression",
                                      "computed": true,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "matrix",
                                        "range": [
                                          4941,
                                          4947
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 7
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "startIndex",
                                        "range": [
                                          4948,
                                          4958
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 24
                                          }
                                        }
                                      },
                                      "range": [
                                        4941,
                                        4959
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 171,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 171,
                                          "column": 25
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "endIndex",
                                      "range": [
                                        4960,
                                        4968
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 171,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 171,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      4941,
                                      4969
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 171,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 171,
                                        "column": 35
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": 1,
                                    "raw": "1",
                                    "range": [
                                      4972,
                                      4973
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 171,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 171,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "range": [
                                    4941,
                                    4973
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 171,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 171,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  4941,
                                  4974
                                ],
                                "loc": {
                                  "start": {
                                    "line": 171,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 171,
                                    "column": 40
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": true,
                                    "object": {
                                      "type": "MemberExpression",
                                      "computed": true,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "matrix",
                                        "range": [
                                          4982,
                                          4988
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 7
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 13
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "endIndex",
                                        "range": [
                                          4989,
                                          4997
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 22
                                          }
                                        }
                                      },
                                      "range": [
                                        4982,
                                        4998
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 172,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 172,
                                          "column": 23
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "startIndex",
                                      "range": [
                                        4999,
                                        5009
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 172,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 172,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      4982,
                                      5010
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 35
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": 1,
                                    "raw": "1",
                                    "range": [
                                      5013,
                                      5014
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "range": [
                                    4982,
                                    5014
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 39
                                    }
                                  }
                                },
                                "range": [
                                  4982,
                                  5015
                                ],
                                "loc": {
                                  "start": {
                                    "line": 172,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 172,
                                    "column": 40
                                  }
                                }
                              }
                            ],
                            "range": [
                              4728,
                              5022
                            ],
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 29
                              },
                              "end": {
                                "line": 173,
                                "column": 6
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            4718,
                            5022
                          ],
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 19
                            },
                            "end": {
                              "line": 173,
                              "column": 6
                            }
                          }
                        }
                      ],
                      "range": [
                        4704,
                        5023
                      ],
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 5
                        },
                        "end": {
                          "line": 173,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      4704,
                      5024
                    ],
                    "loc": {
                      "start": {
                        "line": 166,
                        "column": 5
                      },
                      "end": {
                        "line": 173,
                        "column": 8
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "matrix",
                      "range": [
                        5037,
                        5043
                      ],
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 12
                        },
                        "end": {
                          "line": 174,
                          "column": 18
                        }
                      }
                    },
                    "range": [
                      5030,
                      5044
                    ],
                    "loc": {
                      "start": {
                        "line": 174,
                        "column": 5
                      },
                      "end": {
                        "line": 174,
                        "column": 19
                      }
                    }
                  }
                ],
                "range": [
                  4322,
                  5049
                ],
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 23
                  },
                  "end": {
                    "line": 175,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                4320,
                5049
              ],
              "loc": {
                "start": {
                  "line": 155,
                  "column": 21
                },
                "end": {
                  "line": 175,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              4302,
              5049
            ],
            "loc": {
              "start": {
                "line": 155,
                "column": 3
              },
              "end": {
                "line": 175,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} array of arrays; each entry represents adjacency for row;\n    *         each entry in each sub-array represents adjacency for column;\n    *         if A[i][j] = 1, there is an edge from i to j.\n    ",
                "range": [
                  4072,
                  4298
                ],
                "loc": {
                  "start": {
                    "line": 150,
                    "column": 3
                  },
                  "end": {
                    "line": 154,
                    "column": 6
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} given Vertex A, return all values from vertices connected to A by edges.\n    ",
                "range": [
                  5054,
                  5159
                ],
                "loc": {
                  "start": {
                    "line": 177,
                    "column": 3
                  },
                  "end": {
                    "line": 179,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getEdgesByVertex",
              "range": [
                5163,
                5179
              ],
              "loc": {
                "start": {
                  "line": 180,
                  "column": 3
                },
                "end": {
                  "line": 180,
                  "column": 19
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [
                {
                  "type": "Identifier",
                  "name": "vertex",
                  "range": [
                    5180,
                    5186
                  ],
                  "loc": {
                    "start": {
                      "line": 180,
                      "column": 20
                    },
                    "end": {
                      "line": 180,
                      "column": 26
                    }
                  }
                }
              ],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "IfStatement",
                    "test": {
                      "type": "UnaryExpression",
                      "operator": "!",
                      "argument": {
                        "type": "BinaryExpression",
                        "operator": "instanceof",
                        "left": {
                          "type": "Identifier",
                          "name": "vertex",
                          "range": [
                            5200,
                            5206
                          ],
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 11
                            },
                            "end": {
                              "line": 181,
                              "column": 17
                            }
                          }
                        },
                        "right": {
                          "type": "Identifier",
                          "name": "Vertex",
                          "range": [
                            5218,
                            5224
                          ],
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 29
                            },
                            "end": {
                              "line": 181,
                              "column": 35
                            }
                          }
                        },
                        "range": [
                          5200,
                          5224
                        ],
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 11
                          },
                          "end": {
                            "line": 181,
                            "column": 35
                          }
                        }
                      },
                      "prefix": true,
                      "range": [
                        5198,
                        5225
                      ],
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 9
                        },
                        "end": {
                          "line": 181,
                          "column": 36
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "expression": {
                            "type": "AssignmentExpression",
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "name": "vertex",
                              "range": [
                                5235,
                                5241
                              ],
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 7
                                },
                                "end": {
                                  "line": 182,
                                  "column": 13
                                }
                              }
                            },
                            "right": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "ThisExpression",
                                  "range": [
                                    5244,
                                    5248
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "getVertexByValue",
                                  "range": [
                                    5249,
                                    5265
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 37
                                    }
                                  }
                                },
                                "range": [
                                  5244,
                                  5265
                                ],
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 37
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "vertex",
                                  "range": [
                                    5266,
                                    5272
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 44
                                    }
                                  }
                                }
                              ],
                              "range": [
                                5244,
                                5273
                              ],
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 16
                                },
                                "end": {
                                  "line": 182,
                                  "column": 45
                                }
                              }
                            },
                            "range": [
                              5235,
                              5273
                            ],
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 7
                              },
                              "end": {
                                "line": 182,
                                "column": 45
                              }
                            }
                          },
                          "range": [
                            5235,
                            5274
                          ],
                          "loc": {
                            "start": {
                              "line": 182,
                              "column": 7
                            },
                            "end": {
                              "line": 182,
                              "column": 46
                            }
                          }
                        }
                      ],
                      "range": [
                        5226,
                        5281
                      ],
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 37
                        },
                        "end": {
                          "line": 183,
                          "column": 6
                        }
                      }
                    },
                    "alternate": null,
                    "range": [
                      5194,
                      5281
                    ],
                    "loc": {
                      "start": {
                        "line": 181,
                        "column": 5
                      },
                      "end": {
                        "line": 183,
                        "column": 6
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "edges",
                          "range": [
                            5292,
                            5297
                          ],
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 9
                            },
                            "end": {
                              "line": 185,
                              "column": 14
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                5300,
                                5304
                              ],
                              "loc": {
                                "start": {
                                  "line": 185,
                                  "column": 17
                                },
                                "end": {
                                  "line": 185,
                                  "column": 21
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getEdges",
                              "range": [
                                5305,
                                5313
                              ],
                              "loc": {
                                "start": {
                                  "line": 185,
                                  "column": 22
                                },
                                "end": {
                                  "line": 185,
                                  "column": 30
                                }
                              }
                            },
                            "range": [
                              5300,
                              5313
                            ],
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 17
                              },
                              "end": {
                                "line": 185,
                                "column": 30
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            5300,
                            5315
                          ],
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 17
                            },
                            "end": {
                              "line": 185,
                              "column": 32
                            }
                          }
                        },
                        "range": [
                          5292,
                          5315
                        ],
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 9
                          },
                          "end": {
                            "line": 185,
                            "column": 32
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      5288,
                      5316
                    ],
                    "loc": {
                      "start": {
                        "line": 185,
                        "column": 5
                      },
                      "end": {
                        "line": 185,
                        "column": 33
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            5326,
                            5334
                          ],
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 9
                            },
                            "end": {
                              "line": 186,
                              "column": 17
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "edges",
                              "range": [
                                5337,
                                5342
                              ],
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 20
                                },
                                "end": {
                                  "line": 186,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "filter",
                              "range": [
                                5343,
                                5349
                              ],
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 26
                                },
                                "end": {
                                  "line": 186,
                                  "column": 32
                                }
                              }
                            },
                            "range": [
                              5337,
                              5349
                            ],
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 20
                              },
                              "end": {
                                "line": 186,
                                "column": 32
                              }
                            }
                          },
                          "arguments": [
                            {
                              "type": "ArrowFunctionExpression",
                              "id": null,
                              "params": [
                                {
                                  "type": "Identifier",
                                  "name": "edge",
                                  "range": [
                                    5351,
                                    5355
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 186,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 186,
                                      "column": 38
                                    }
                                  }
                                }
                              ],
                              "body": {
                                "type": "BlockStatement",
                                "body": [
                                  {
                                    "type": "ReturnStatement",
                                    "argument": {
                                      "type": "BinaryExpression",
                                      "operator": "===",
                                      "left": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "edge",
                                            "range": [
                                              5376,
                                              5380
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 18
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "startVertex",
                                            "range": [
                                              5381,
                                              5392
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 19
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 30
                                              }
                                            }
                                          },
                                          "range": [
                                            5376,
                                            5392
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 30
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            5393,
                                            5398
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 31
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "range": [
                                          5376,
                                          5398
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 36
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "vertex",
                                          "range": [
                                            5403,
                                            5409
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 47
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            5410,
                                            5415
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 48
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "range": [
                                          5403,
                                          5415
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 53
                                          }
                                        }
                                      },
                                      "range": [
                                        5376,
                                        5415
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 53
                                        }
                                      }
                                    },
                                    "range": [
                                      5369,
                                      5416
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 54
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5360,
                                  5423
                                ],
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 6
                                  }
                                }
                              },
                              "generator": false,
                              "expression": false,
                              "range": [
                                5350,
                                5423
                              ],
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 33
                                },
                                "end": {
                                  "line": 188,
                                  "column": 6
                                }
                              }
                            }
                          ],
                          "range": [
                            5337,
                            5424
                          ],
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 20
                            },
                            "end": {
                              "line": 188,
                              "column": 7
                            }
                          }
                        },
                        "range": [
                          5326,
                          5424
                        ],
                        "loc": {
                          "start": {
                            "line": 186,
                            "column": 9
                          },
                          "end": {
                            "line": 188,
                            "column": 7
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      5322,
                      5425
                    ],
                    "loc": {
                      "start": {
                        "line": 186,
                        "column": 5
                      },
                      "end": {
                        "line": 188,
                        "column": 8
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "matching",
                          "range": [
                            5439,
                            5447
                          ],
                          "loc": {
                            "start": {
                              "line": 190,
                              "column": 12
                            },
                            "end": {
                              "line": 190,
                              "column": 20
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "map",
                          "range": [
                            5448,
                            5451
                          ],
                          "loc": {
                            "start": {
                              "line": 190,
                              "column": 21
                            },
                            "end": {
                              "line": 190,
                              "column": 24
                            }
                          }
                        },
                        "range": [
                          5439,
                          5451
                        ],
                        "loc": {
                          "start": {
                            "line": 190,
                            "column": 12
                          },
                          "end": {
                            "line": 190,
                            "column": 24
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "edge",
                              "range": [
                                5454,
                                5458
                              ],
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 27
                                },
                                "end": {
                                  "line": 190,
                                  "column": 31
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ReturnStatement",
                                "argument": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "edge",
                                      "range": [
                                        5479,
                                        5483
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 18
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "endVertex",
                                      "range": [
                                        5484,
                                        5493
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 19
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "range": [
                                      5479,
                                      5493
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "value",
                                    "range": [
                                      5494,
                                      5499
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5479,
                                    5499
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 34
                                    }
                                  }
                                },
                                "range": [
                                  5472,
                                  5500
                                ],
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 191,
                                    "column": 35
                                  }
                                }
                              }
                            ],
                            "range": [
                              5463,
                              5507
                            ],
                            "loc": {
                              "start": {
                                "line": 190,
                                "column": 36
                              },
                              "end": {
                                "line": 192,
                                "column": 6
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            5453,
                            5507
                          ],
                          "loc": {
                            "start": {
                              "line": 190,
                              "column": 26
                            },
                            "end": {
                              "line": 192,
                              "column": 6
                            }
                          }
                        }
                      ],
                      "range": [
                        5439,
                        5508
                      ],
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 12
                        },
                        "end": {
                          "line": 192,
                          "column": 7
                        }
                      }
                    },
                    "range": [
                      5432,
                      5509
                    ],
                    "loc": {
                      "start": {
                        "line": 190,
                        "column": 5
                      },
                      "end": {
                        "line": 192,
                        "column": 8
                      }
                    }
                  }
                ],
                "range": [
                  5187,
                  5514
                ],
                "loc": {
                  "start": {
                    "line": 180,
                    "column": 27
                  },
                  "end": {
                    "line": 193,
                    "column": 4
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                5179,
                5514
              ],
              "loc": {
                "start": {
                  "line": 180,
                  "column": 19
                },
                "end": {
                  "line": 193,
                  "column": 4
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              5163,
              5514
            ],
            "loc": {
              "start": {
                "line": 180,
                "column": 3
              },
              "end": {
                "line": 193,
                "column": 4
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Array} given Vertex A, return all values from vertices connected to A by edges.\n    ",
                "range": [
                  5054,
                  5159
                ],
                "loc": {
                  "start": {
                    "line": 177,
                    "column": 3
                  },
                  "end": {
                    "line": 179,
                    "column": 6
                  }
                }
              }
            ],
            "trailingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Object} each Object key represents a vertex in graph;\n    * value at each key is an array of vertex values found in edge destinations.\n    ",
                "range": [
                  5519,
                  5679
                ],
                "loc": {
                  "start": {
                    "line": 195,
                    "column": 3
                  },
                  "end": {
                    "line": 198,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          },
          {
            "type": "MethodDefinition",
            "key": {
              "type": "Identifier",
              "name": "getAdjacencyList",
              "range": [
                5684,
                5700
              ],
              "loc": {
                "start": {
                  "line": 199,
                  "column": 4
                },
                "end": {
                  "line": 199,
                  "column": 20
                }
              }
            },
            "value": {
              "type": "FunctionExpression",
              "id": null,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "list",
                          "range": [
                            5714,
                            5718
                          ],
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 10
                            },
                            "end": {
                              "line": 200,
                              "column": 14
                            }
                          }
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "properties": [],
                          "range": [
                            5721,
                            5723
                          ],
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 17
                            },
                            "end": {
                              "line": 200,
                              "column": 19
                            }
                          }
                        },
                        "range": [
                          5714,
                          5723
                        ],
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 10
                          },
                          "end": {
                            "line": 200,
                            "column": 19
                          }
                        }
                      }
                    ],
                    "kind": "var",
                    "range": [
                      5710,
                      5724
                    ],
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 6
                      },
                      "end": {
                        "line": 200,
                        "column": 20
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "id": {
                          "type": "Identifier",
                          "name": "vertices",
                          "range": [
                            5735,
                            5743
                          ],
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 10
                            },
                            "end": {
                              "line": 201,
                              "column": 18
                            }
                          }
                        },
                        "init": {
                          "type": "CallExpression",
                          "callee": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                5746,
                                5750
                              ],
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 21
                                },
                                "end": {
                                  "line": 201,
                                  "column": 25
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "getVertices",
                              "range": [
                                5751,
                                5762
                              ],
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 26
                                },
                                "end": {
                                  "line": 201,
                                  "column": 37
                                }
                              }
                            },
                            "range": [
                              5746,
                              5762
                            ],
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 21
                              },
                              "end": {
                                "line": 201,
                                "column": 37
                              }
                            }
                          },
                          "arguments": [],
                          "range": [
                            5746,
                            5764
                          ],
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 21
                            },
                            "end": {
                              "line": 201,
                              "column": 39
                            }
                          }
                        },
                        "range": [
                          5735,
                          5764
                        ],
                        "loc": {
                          "start": {
                            "line": 201,
                            "column": 10
                          },
                          "end": {
                            "line": 201,
                            "column": 39
                          }
                        }
                      }
                    ],
                    "kind": "let",
                    "range": [
                      5731,
                      5765
                    ],
                    "loc": {
                      "start": {
                        "line": 201,
                        "column": 6
                      },
                      "end": {
                        "line": 201,
                        "column": 40
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "expression": {
                      "type": "CallExpression",
                      "callee": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "Identifier",
                          "name": "vertices",
                          "range": [
                            5772,
                            5780
                          ],
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 6
                            },
                            "end": {
                              "line": 202,
                              "column": 14
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "forEach",
                          "range": [
                            5781,
                            5788
                          ],
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 15
                            },
                            "end": {
                              "line": 202,
                              "column": 22
                            }
                          }
                        },
                        "range": [
                          5772,
                          5788
                        ],
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 6
                          },
                          "end": {
                            "line": 202,
                            "column": 22
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "id": null,
                          "params": [
                            {
                              "type": "Identifier",
                              "name": "vertex",
                              "range": [
                                5790,
                                5796
                              ],
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 24
                                },
                                "end": {
                                  "line": 202,
                                  "column": 30
                                }
                              }
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "computed": true,
                                    "object": {
                                      "type": "Identifier",
                                      "name": "list",
                                      "range": [
                                        5811,
                                        5815
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "vertex",
                                        "range": [
                                          5816,
                                          5822
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          5823,
                                          5828
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 25
                                          }
                                        }
                                      },
                                      "range": [
                                        5816,
                                        5828
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 25
                                        }
                                      }
                                    },
                                    "range": [
                                      5811,
                                      5829
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          5832,
                                          5836
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 33
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "getEdgesByVertex",
                                        "range": [
                                          5837,
                                          5853
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 50
                                          }
                                        }
                                      },
                                      "range": [
                                        5832,
                                        5853
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 50
                                        }
                                      }
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "name": "vertex",
                                        "range": [
                                          5854,
                                          5860
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 57
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      5832,
                                      5861
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 58
                                      }
                                    }
                                  },
                                  "range": [
                                    5811,
                                    5861
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 58
                                    }
                                  }
                                },
                                "range": [
                                  5811,
                                  5862
                                ],
                                "loc": {
                                  "start": {
                                    "line": 203,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 203,
                                    "column": 59
                                  }
                                }
                              }
                            ],
                            "range": [
                              5801,
                              5870
                            ],
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 35
                              },
                              "end": {
                                "line": 204,
                                "column": 7
                              }
                            }
                          },
                          "generator": false,
                          "expression": false,
                          "range": [
                            5789,
                            5870
                          ],
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 23
                            },
                            "end": {
                              "line": 204,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "range": [
                        5772,
                        5871
                      ],
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 6
                        },
                        "end": {
                          "line": 204,
                          "column": 8
                        }
                      }
                    },
                    "range": [
                      5772,
                      5872
                    ],
                    "loc": {
                      "start": {
                        "line": 202,
                        "column": 6
                      },
                      "end": {
                        "line": 204,
                        "column": 9
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "argument": {
                      "type": "Identifier",
                      "name": "list",
                      "range": [
                        5886,
                        5890
                      ],
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 13
                        },
                        "end": {
                          "line": 205,
                          "column": 17
                        }
                      }
                    },
                    "range": [
                      5879,
                      5891
                    ],
                    "loc": {
                      "start": {
                        "line": 205,
                        "column": 6
                      },
                      "end": {
                        "line": 205,
                        "column": 18
                      }
                    }
                  }
                ],
                "range": [
                  5702,
                  5897
                ],
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 22
                  },
                  "end": {
                    "line": 206,
                    "column": 5
                  }
                }
              },
              "generator": false,
              "expression": false,
              "range": [
                5700,
                5897
              ],
              "loc": {
                "start": {
                  "line": 199,
                  "column": 20
                },
                "end": {
                  "line": 206,
                  "column": 5
                }
              }
            },
            "kind": "method",
            "computed": false,
            "range": [
              5684,
              5897
            ],
            "loc": {
              "start": {
                "line": 199,
                "column": 4
              },
              "end": {
                "line": 206,
                "column": 5
              }
            },
            "leadingComments": [
              {
                "type": "Block",
                "value": "*\n    * @return {Object} each Object key represents a vertex in graph;\n    * value at each key is an array of vertex values found in edge destinations.\n    ",
                "range": [
                  5519,
                  5679
                ],
                "loc": {
                  "start": {
                    "line": 195,
                    "column": 3
                  },
                  "end": {
                    "line": 198,
                    "column": 6
                  }
                }
              }
            ],
            "static": false
          }
        ],
        "range": [
          382,
          5899
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 12
          },
          "end": {
            "line": 207,
            "column": 1
          }
        }
      },
      "range": [
        370,
        5899
      ],
      "loc": {
        "start": {
          "line": 13,
          "column": 0
        },
        "end": {
          "line": 207,
          "column": 1
        }
      },
      "leadingComments": [],
      "name": "_",
      "trailingComments": []
    },
    {
      "type": "Identifier",
      "declaration": {
        "type": "Identifier",
        "name": "Graph",
        "range": [
          5916,
          5921
        ],
        "loc": {
          "start": {
            "line": 209,
            "column": 15
          },
          "end": {
            "line": 209,
            "column": 20
          }
        }
      },
      "range": [
        5901,
        5922
      ],
      "loc": {
        "start": {
          "line": 209,
          "column": 0
        },
        "end": {
          "line": 209,
          "column": 21
        }
      },
      "name": "_",
      "leadingComments": [],
      "trailingComments": []
    },
    {
      "type": "ExportDefaultDeclaration",
      "declaration": {
        "type": "ClassDeclaration",
        "id": {
          "type": "Identifier",
          "name": "Graph",
          "range": [
            376,
            381
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 6
            },
            "end": {
              "line": 13,
              "column": 11
            }
          }
        },
        "superClass": null,
        "body": {
          "type": "ClassBody",
          "body": [
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "constructor",
                "range": [
                  386,
                  397
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 2
                  },
                  "end": {
                    "line": 14,
                    "column": 13
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              405,
                              409
                            ],
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 4
                              },
                              "end": {
                                "line": 15,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_vertices",
                            "range": [
                              410,
                              419
                            ],
                            "loc": {
                              "start": {
                                "line": 15,
                                "column": 9
                              },
                              "end": {
                                "line": 15,
                                "column": 18
                              }
                            }
                          },
                          "range": [
                            405,
                            419
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 4
                            },
                            "end": {
                              "line": 15,
                              "column": 18
                            }
                          }
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "elements": [],
                          "range": [
                            422,
                            424
                          ],
                          "loc": {
                            "start": {
                              "line": 15,
                              "column": 21
                            },
                            "end": {
                              "line": 15,
                              "column": 23
                            }
                          }
                        },
                        "range": [
                          405,
                          424
                        ],
                        "loc": {
                          "start": {
                            "line": 15,
                            "column": 4
                          },
                          "end": {
                            "line": 15,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        405,
                        425
                      ],
                      "loc": {
                        "start": {
                          "line": 15,
                          "column": 4
                        },
                        "end": {
                          "line": 15,
                          "column": 24
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "AssignmentExpression",
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              430,
                              434
                            ],
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 4
                              },
                              "end": {
                                "line": 16,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "_edges",
                            "range": [
                              435,
                              441
                            ],
                            "loc": {
                              "start": {
                                "line": 16,
                                "column": 9
                              },
                              "end": {
                                "line": 16,
                                "column": 15
                              }
                            }
                          },
                          "range": [
                            430,
                            441
                          ],
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 4
                            },
                            "end": {
                              "line": 16,
                              "column": 15
                            }
                          }
                        },
                        "right": {
                          "type": "ArrayExpression",
                          "elements": [],
                          "range": [
                            444,
                            446
                          ],
                          "loc": {
                            "start": {
                              "line": 16,
                              "column": 18
                            },
                            "end": {
                              "line": 16,
                              "column": 20
                            }
                          }
                        },
                        "range": [
                          430,
                          446
                        ],
                        "loc": {
                          "start": {
                            "line": 16,
                            "column": 4
                          },
                          "end": {
                            "line": 16,
                            "column": 20
                          }
                        }
                      },
                      "range": [
                        430,
                        447
                      ],
                      "loc": {
                        "start": {
                          "line": 16,
                          "column": 4
                        },
                        "end": {
                          "line": 16,
                          "column": 21
                        }
                      }
                    }
                  ],
                  "range": [
                    399,
                    451
                  ],
                  "loc": {
                    "start": {
                      "line": 14,
                      "column": 15
                    },
                    "end": {
                      "line": 17,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  397,
                  451
                ],
                "loc": {
                  "start": {
                    "line": 14,
                    "column": 13
                  },
                  "end": {
                    "line": 17,
                    "column": 3
                  }
                }
              },
              "kind": "constructor",
              "computed": false,
              "range": [
                386,
                451
              ],
              "loc": {
                "start": {
                  "line": 14,
                  "column": 2
                },
                "end": {
                  "line": 17,
                  "column": 3
                }
              },
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @return {Array} array of all Vertex instances in this graph.\n   ",
                  "range": [
                    455,
                    530
                  ],
                  "loc": {
                    "start": {
                      "line": 19,
                      "column": 2
                    },
                    "end": {
                      "line": 21,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getVertices",
                "range": [
                  533,
                  544
                ],
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 2
                  },
                  "end": {
                    "line": 22,
                    "column": 13
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            559,
                            563
                          ],
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 11
                            },
                            "end": {
                              "line": 23,
                              "column": 15
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_vertices",
                          "range": [
                            564,
                            573
                          ],
                          "loc": {
                            "start": {
                              "line": 23,
                              "column": 16
                            },
                            "end": {
                              "line": 23,
                              "column": 25
                            }
                          }
                        },
                        "range": [
                          559,
                          573
                        ],
                        "loc": {
                          "start": {
                            "line": 23,
                            "column": 11
                          },
                          "end": {
                            "line": 23,
                            "column": 25
                          }
                        }
                      },
                      "range": [
                        552,
                        574
                      ],
                      "loc": {
                        "start": {
                          "line": 23,
                          "column": 4
                        },
                        "end": {
                          "line": 23,
                          "column": 26
                        }
                      }
                    }
                  ],
                  "range": [
                    546,
                    578
                  ],
                  "loc": {
                    "start": {
                      "line": 22,
                      "column": 15
                    },
                    "end": {
                      "line": 24,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  544,
                  578
                ],
                "loc": {
                  "start": {
                    "line": 22,
                    "column": 13
                  },
                  "end": {
                    "line": 24,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                533,
                578
              ],
              "loc": {
                "start": {
                  "line": 22,
                  "column": 2
                },
                "end": {
                  "line": 24,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @return {Array} array of all Vertex instances in this graph.\n   ",
                  "range": [
                    455,
                    530
                  ],
                  "loc": {
                    "start": {
                      "line": 19,
                      "column": 2
                    },
                    "end": {
                      "line": 21,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value to find in the graph.\n   * @return {Boolean} true if any vertex has this value else false\n   ",
                  "range": [
                    582,
                    707
                  ],
                  "loc": {
                    "start": {
                      "line": 26,
                      "column": 2
                    },
                    "end": {
                      "line": 29,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "hasVertexWithValue",
                "range": [
                  710,
                  728
                ],
                "loc": {
                  "start": {
                    "line": 30,
                    "column": 2
                  },
                  "end": {
                    "line": 30,
                    "column": 20
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "value",
                    "range": [
                      729,
                      734
                    ],
                    "loc": {
                      "start": {
                        "line": 30,
                        "column": 21
                      },
                      "end": {
                        "line": 30,
                        "column": 26
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "vertexValues",
                            "range": [
                              745,
                              757
                            ],
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 8
                              },
                              "end": {
                                "line": 31,
                                "column": 20
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  760,
                                  764
                                ],
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getVertexValues",
                                "range": [
                                  765,
                                  780
                                ],
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 43
                                  }
                                }
                              },
                              "range": [
                                760,
                                780
                              ],
                              "loc": {
                                "start": {
                                  "line": 31,
                                  "column": 23
                                },
                                "end": {
                                  "line": 31,
                                  "column": 43
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              760,
                              782
                            ],
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 23
                              },
                              "end": {
                                "line": 31,
                                "column": 45
                              }
                            }
                          },
                          "range": [
                            745,
                            782
                          ],
                          "loc": {
                            "start": {
                              "line": 31,
                              "column": 8
                            },
                            "end": {
                              "line": 31,
                              "column": 45
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        741,
                        783
                      ],
                      "loc": {
                        "start": {
                          "line": 31,
                          "column": 4
                        },
                        "end": {
                          "line": 31,
                          "column": 46
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "UnaryExpression",
                          "operator": "!",
                          "argument": {
                            "type": "UnaryExpression",
                            "operator": "~",
                            "argument": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "Identifier",
                                  "name": "vertexValues",
                                  "range": [
                                    798,
                                    810
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 26
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "indexOf",
                                  "range": [
                                    811,
                                    818
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 34
                                    }
                                  }
                                },
                                "range": [
                                  798,
                                  818
                                ],
                                "loc": {
                                  "start": {
                                    "line": 32,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 32,
                                    "column": 34
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "value",
                                  "range": [
                                    819,
                                    824
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 32,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 32,
                                      "column": 40
                                    }
                                  }
                                }
                              ],
                              "range": [
                                798,
                                825
                              ],
                              "loc": {
                                "start": {
                                  "line": 32,
                                  "column": 14
                                },
                                "end": {
                                  "line": 32,
                                  "column": 41
                                }
                              }
                            },
                            "prefix": true,
                            "range": [
                              797,
                              825
                            ],
                            "loc": {
                              "start": {
                                "line": 32,
                                "column": 13
                              },
                              "end": {
                                "line": 32,
                                "column": 41
                              }
                            }
                          },
                          "prefix": true,
                          "range": [
                            796,
                            825
                          ],
                          "loc": {
                            "start": {
                              "line": 32,
                              "column": 12
                            },
                            "end": {
                              "line": 32,
                              "column": 41
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          795,
                          825
                        ],
                        "loc": {
                          "start": {
                            "line": 32,
                            "column": 11
                          },
                          "end": {
                            "line": 32,
                            "column": 41
                          }
                        }
                      },
                      "range": [
                        788,
                        826
                      ],
                      "loc": {
                        "start": {
                          "line": 32,
                          "column": 4
                        },
                        "end": {
                          "line": 32,
                          "column": 42
                        }
                      }
                    }
                  ],
                  "range": [
                    735,
                    830
                  ],
                  "loc": {
                    "start": {
                      "line": 30,
                      "column": 27
                    },
                    "end": {
                      "line": 33,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  728,
                  830
                ],
                "loc": {
                  "start": {
                    "line": 30,
                    "column": 20
                  },
                  "end": {
                    "line": 33,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                710,
                830
              ],
              "loc": {
                "start": {
                  "line": 30,
                  "column": 2
                },
                "end": {
                  "line": 33,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value to find in the graph.\n   * @return {Boolean} true if any vertex has this value else false\n   ",
                  "range": [
                    582,
                    707
                  ],
                  "loc": {
                    "start": {
                      "line": 26,
                      "column": 2
                    },
                    "end": {
                      "line": 29,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @return {Array} array of values in all graph vertices.\n   ",
                  "range": [
                    834,
                    903
                  ],
                  "loc": {
                    "start": {
                      "line": 35,
                      "column": 2
                    },
                    "end": {
                      "line": 37,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getVertexValues",
                "range": [
                  906,
                  921
                ],
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 2
                  },
                  "end": {
                    "line": 38,
                    "column": 17
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                936,
                                940
                              ],
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 11
                                },
                                "end": {
                                  "line": 39,
                                  "column": 15
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "_vertices",
                              "range": [
                                941,
                                950
                              ],
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 16
                                },
                                "end": {
                                  "line": 39,
                                  "column": 25
                                }
                              }
                            },
                            "range": [
                              936,
                              950
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 11
                              },
                              "end": {
                                "line": 39,
                                "column": 25
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "map",
                            "range": [
                              951,
                              954
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 26
                              },
                              "end": {
                                "line": 39,
                                "column": 29
                              }
                            }
                          },
                          "range": [
                            936,
                            954
                          ],
                          "loc": {
                            "start": {
                              "line": 39,
                              "column": 11
                            },
                            "end": {
                              "line": 39,
                              "column": 29
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  956,
                                  962
                                ],
                                "loc": {
                                  "start": {
                                    "line": 39,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 39,
                                    "column": 37
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "argument": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "vertex",
                                        "range": [
                                          982,
                                          988
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 40,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 40,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "getValue",
                                        "range": [
                                          989,
                                          997
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 40,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 40,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "range": [
                                        982,
                                        997
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 40,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 40,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "arguments": [],
                                    "range": [
                                      982,
                                      999
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 40,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 40,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "range": [
                                    975,
                                    1000
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 40,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 40,
                                      "column": 31
                                    }
                                  }
                                }
                              ],
                              "range": [
                                967,
                                1006
                              ],
                              "loc": {
                                "start": {
                                  "line": 39,
                                  "column": 42
                                },
                                "end": {
                                  "line": 41,
                                  "column": 5
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              955,
                              1006
                            ],
                            "loc": {
                              "start": {
                                "line": 39,
                                "column": 30
                              },
                              "end": {
                                "line": 41,
                                "column": 5
                              }
                            }
                          }
                        ],
                        "range": [
                          936,
                          1007
                        ],
                        "loc": {
                          "start": {
                            "line": 39,
                            "column": 11
                          },
                          "end": {
                            "line": 41,
                            "column": 6
                          }
                        }
                      },
                      "range": [
                        929,
                        1008
                      ],
                      "loc": {
                        "start": {
                          "line": 39,
                          "column": 4
                        },
                        "end": {
                          "line": 41,
                          "column": 7
                        }
                      }
                    }
                  ],
                  "range": [
                    923,
                    1012
                  ],
                  "loc": {
                    "start": {
                      "line": 38,
                      "column": 19
                    },
                    "end": {
                      "line": 42,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  921,
                  1012
                ],
                "loc": {
                  "start": {
                    "line": 38,
                    "column": 17
                  },
                  "end": {
                    "line": 42,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                906,
                1012
              ],
              "loc": {
                "start": {
                  "line": 38,
                  "column": 2
                },
                "end": {
                  "line": 42,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @return {Array} array of values in all graph vertices.\n   ",
                  "range": [
                    834,
                    903
                  ],
                  "loc": {
                    "start": {
                      "line": 35,
                      "column": 2
                    },
                    "end": {
                      "line": 37,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value to set on the vertex\n   * @throws {DuplicateVertexError} when adding vertex whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    1016,
                    1204
                  ],
                  "loc": {
                    "start": {
                      "line": 44,
                      "column": 2
                    },
                    "end": {
                      "line": 48,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "addVertex",
                "range": [
                  1207,
                  1216
                ],
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 2
                  },
                  "end": {
                    "line": 49,
                    "column": 11
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "value",
                    "range": [
                      1217,
                      1222
                    ],
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 12
                      },
                      "end": {
                        "line": 49,
                        "column": 17
                      }
                    }
                  },
                  {
                    "type": "AssignmentPattern",
                    "left": {
                      "type": "Identifier",
                      "name": "vertex_class",
                      "range": [
                        1224,
                        1236
                      ],
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 19
                        },
                        "end": {
                          "line": 49,
                          "column": 31
                        }
                      }
                    },
                    "right": {
                      "type": "Identifier",
                      "name": "Vertex",
                      "range": [
                        1237,
                        1243
                      ],
                      "loc": {
                        "start": {
                          "line": 49,
                          "column": 32
                        },
                        "end": {
                          "line": 49,
                          "column": 38
                        }
                      }
                    },
                    "range": [
                      1224,
                      1243
                    ],
                    "loc": {
                      "start": {
                        "line": 49,
                        "column": 19
                      },
                      "end": {
                        "line": 49,
                        "column": 38
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              1254,
                              1258
                            ],
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 8
                              },
                              "end": {
                                "line": 50,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "hasVertexWithValue",
                            "range": [
                              1259,
                              1277
                            ],
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 13
                              },
                              "end": {
                                "line": 50,
                                "column": 31
                              }
                            }
                          },
                          "range": [
                            1254,
                            1277
                          ],
                          "loc": {
                            "start": {
                              "line": 50,
                              "column": 8
                            },
                            "end": {
                              "line": 50,
                              "column": 31
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "value",
                            "range": [
                              1278,
                              1283
                            ],
                            "loc": {
                              "start": {
                                "line": 50,
                                "column": 32
                              },
                              "end": {
                                "line": 50,
                                "column": 37
                              }
                            }
                          }
                        ],
                        "range": [
                          1254,
                          1284
                        ],
                        "loc": {
                          "start": {
                            "line": 50,
                            "column": 8
                          },
                          "end": {
                            "line": 50,
                            "column": 38
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ThrowStatement",
                            "argument": {
                              "type": "NewExpression",
                              "callee": {
                                "type": "Identifier",
                                "name": "DuplicateVertexError",
                                "range": [
                                  1303,
                                  1323
                                ],
                                "loc": {
                                  "start": {
                                    "line": 51,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 51,
                                    "column": 36
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "operator": "+",
                                  "left": {
                                    "type": "BinaryExpression",
                                    "operator": "+",
                                    "left": {
                                      "type": "Literal",
                                      "value": "Cannot add duplicate value '",
                                      "raw": "\"Cannot add duplicate value '\"",
                                      "range": [
                                        1324,
                                        1354
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 67
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            1357,
                                            1362
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 51,
                                              "column": 70
                                            },
                                            "end": {
                                              "line": 51,
                                              "column": 75
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "toString",
                                          "range": [
                                            1363,
                                            1371
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 51,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 51,
                                              "column": 84
                                            }
                                          }
                                        },
                                        "range": [
                                          1357,
                                          1371
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 84
                                          }
                                        }
                                      },
                                      "arguments": [],
                                      "range": [
                                        1357,
                                        1373
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 86
                                        }
                                      }
                                    },
                                    "range": [
                                      1324,
                                      1373
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 51,
                                        "column": 86
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": "' to graph.",
                                    "raw": "\"' to graph.\"",
                                    "range": [
                                      1376,
                                      1389
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 89
                                      },
                                      "end": {
                                        "line": 51,
                                        "column": 102
                                      }
                                    }
                                  },
                                  "range": [
                                    1324,
                                    1389
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 102
                                    }
                                  }
                                }
                              ],
                              "range": [
                                1299,
                                1390
                              ],
                              "loc": {
                                "start": {
                                  "line": 51,
                                  "column": 12
                                },
                                "end": {
                                  "line": 51,
                                  "column": 103
                                }
                              }
                            },
                            "range": [
                              1293,
                              1391
                            ],
                            "loc": {
                              "start": {
                                "line": 51,
                                "column": 6
                              },
                              "end": {
                                "line": 51,
                                "column": 104
                              }
                            }
                          }
                        ],
                        "range": [
                          1285,
                          1397
                        ],
                        "loc": {
                          "start": {
                            "line": 50,
                            "column": 39
                          },
                          "end": {
                            "line": 52,
                            "column": 5
                          }
                        }
                      },
                      "alternate": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "id": {
                                  "type": "Identifier",
                                  "name": "vertex",
                                  "range": [
                                    1415,
                                    1421
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 16
                                    }
                                  }
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "callee": {
                                    "type": "Identifier",
                                    "name": "vertex_class",
                                    "range": [
                                      1428,
                                      1440
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 53,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 53,
                                        "column": 35
                                      }
                                    }
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "name": "value",
                                      "range": [
                                        1441,
                                        1446
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 53,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 53,
                                          "column": 41
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1424,
                                    1447
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 53,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 53,
                                      "column": 42
                                    }
                                  }
                                },
                                "range": [
                                  1415,
                                  1447
                                ],
                                "loc": {
                                  "start": {
                                    "line": 53,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 53,
                                    "column": 42
                                  }
                                }
                              }
                            ],
                            "kind": "var",
                            "range": [
                              1411,
                              1448
                            ],
                            "loc": {
                              "start": {
                                "line": 53,
                                "column": 6
                              },
                              "end": {
                                "line": 53,
                                "column": 43
                              }
                            }
                          },
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "CallExpression",
                              "callee": {
                                "type": "MemberExpression",
                                "computed": false,
                                "object": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      1455,
                                      1459
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 10
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "_vertices",
                                    "range": [
                                      1460,
                                      1469
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 54,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 54,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "range": [
                                    1455,
                                    1469
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 20
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "name": "push",
                                  "range": [
                                    1470,
                                    1474
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 25
                                    }
                                  }
                                },
                                "range": [
                                  1455,
                                  1474
                                ],
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 25
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "name": "vertex",
                                  "range": [
                                    1475,
                                    1481
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 32
                                    }
                                  }
                                }
                              ],
                              "range": [
                                1455,
                                1482
                              ],
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 6
                                },
                                "end": {
                                  "line": 54,
                                  "column": 33
                                }
                              }
                            },
                            "range": [
                              1455,
                              1483
                            ],
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 6
                              },
                              "end": {
                                "line": 54,
                                "column": 34
                              }
                            }
                          }
                        ],
                        "range": [
                          1403,
                          1489
                        ],
                        "loc": {
                          "start": {
                            "line": 52,
                            "column": 11
                          },
                          "end": {
                            "line": 55,
                            "column": 5
                          }
                        }
                      },
                      "range": [
                        1250,
                        1489
                      ],
                      "loc": {
                        "start": {
                          "line": 50,
                          "column": 4
                        },
                        "end": {
                          "line": 55,
                          "column": 5
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "ThisExpression",
                        "range": [
                          1501,
                          1505
                        ],
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 11
                          },
                          "end": {
                            "line": 56,
                            "column": 15
                          }
                        }
                      },
                      "range": [
                        1494,
                        1506
                      ],
                      "loc": {
                        "start": {
                          "line": 56,
                          "column": 4
                        },
                        "end": {
                          "line": 56,
                          "column": 16
                        }
                      }
                    }
                  ],
                  "range": [
                    1244,
                    1510
                  ],
                  "loc": {
                    "start": {
                      "line": 49,
                      "column": 39
                    },
                    "end": {
                      "line": 57,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1216,
                  1510
                ],
                "loc": {
                  "start": {
                    "line": 49,
                    "column": 11
                  },
                  "end": {
                    "line": 57,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                1207,
                1510
              ],
              "loc": {
                "start": {
                  "line": 49,
                  "column": 2
                },
                "end": {
                  "line": 57,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value to set on the vertex\n   * @throws {DuplicateVertexError} when adding vertex whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    1016,
                    1204
                  ],
                  "loc": {
                    "start": {
                      "line": 44,
                      "column": 2
                    },
                    "end": {
                      "line": 48,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {values} array of values to add to the graph\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    1514,
                    1628
                  ],
                  "loc": {
                    "start": {
                      "line": 59,
                      "column": 2
                    },
                    "end": {
                      "line": 62,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "addVerticies",
                "range": [
                  1631,
                  1643
                ],
                "loc": {
                  "start": {
                    "line": 63,
                    "column": 2
                  },
                  "end": {
                    "line": 63,
                    "column": 14
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "values",
                    "range": [
                      1644,
                      1650
                    ],
                    "loc": {
                      "start": {
                        "line": 63,
                        "column": 15
                      },
                      "end": {
                        "line": 63,
                        "column": 21
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "values",
                            "range": [
                              1657,
                              1663
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 4
                              },
                              "end": {
                                "line": 64,
                                "column": 10
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "forEach",
                            "range": [
                              1664,
                              1671
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 11
                              },
                              "end": {
                                "line": 64,
                                "column": 18
                              }
                            }
                          },
                          "range": [
                            1657,
                            1671
                          ],
                          "loc": {
                            "start": {
                              "line": 64,
                              "column": 4
                            },
                            "end": {
                              "line": 64,
                              "column": 18
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "value",
                                "range": [
                                  1673,
                                  1678
                                ],
                                "loc": {
                                  "start": {
                                    "line": 64,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 64,
                                    "column": 25
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "ThisExpression",
                                        "range": [
                                          1691,
                                          1695
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 10
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "addVertex",
                                        "range": [
                                          1696,
                                          1705
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 20
                                          }
                                        }
                                      },
                                      "range": [
                                        1691,
                                        1705
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 65,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 65,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          1706,
                                          1711
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 65,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 65,
                                            "column": 26
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      1691,
                                      1712
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 65,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 65,
                                        "column": 27
                                      }
                                    }
                                  },
                                  "range": [
                                    1691,
                                    1713
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 65,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 65,
                                      "column": 28
                                    }
                                  }
                                }
                              ],
                              "range": [
                                1683,
                                1719
                              ],
                              "loc": {
                                "start": {
                                  "line": 64,
                                  "column": 30
                                },
                                "end": {
                                  "line": 66,
                                  "column": 5
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              1672,
                              1719
                            ],
                            "loc": {
                              "start": {
                                "line": 64,
                                "column": 19
                              },
                              "end": {
                                "line": 66,
                                "column": 5
                              }
                            }
                          }
                        ],
                        "range": [
                          1657,
                          1720
                        ],
                        "loc": {
                          "start": {
                            "line": 64,
                            "column": 4
                          },
                          "end": {
                            "line": 66,
                            "column": 6
                          }
                        }
                      },
                      "range": [
                        1657,
                        1721
                      ],
                      "loc": {
                        "start": {
                          "line": 64,
                          "column": 4
                        },
                        "end": {
                          "line": 66,
                          "column": 7
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "ThisExpression",
                        "range": [
                          1733,
                          1737
                        ],
                        "loc": {
                          "start": {
                            "line": 67,
                            "column": 11
                          },
                          "end": {
                            "line": 67,
                            "column": 15
                          }
                        }
                      },
                      "range": [
                        1726,
                        1738
                      ],
                      "loc": {
                        "start": {
                          "line": 67,
                          "column": 4
                        },
                        "end": {
                          "line": 67,
                          "column": 16
                        }
                      }
                    }
                  ],
                  "range": [
                    1651,
                    1742
                  ],
                  "loc": {
                    "start": {
                      "line": 63,
                      "column": 22
                    },
                    "end": {
                      "line": 68,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1643,
                  1742
                ],
                "loc": {
                  "start": {
                    "line": 63,
                    "column": 14
                  },
                  "end": {
                    "line": 68,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                1631,
                1742
              ],
              "loc": {
                "start": {
                  "line": 63,
                  "column": 2
                },
                "end": {
                  "line": 68,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {values} array of values to add to the graph\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    1514,
                    1628
                  ],
                  "loc": {
                    "start": {
                      "line": 59,
                      "column": 2
                    },
                    "end": {
                      "line": 62,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value\n   * @return {Vertex} instance of Vertex in graph with value, else undefined\n   ",
                  "range": [
                    1746,
                    1858
                  ],
                  "loc": {
                    "start": {
                      "line": 70,
                      "column": 2
                    },
                    "end": {
                      "line": 73,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getVertexByValue",
                "range": [
                  1861,
                  1877
                ],
                "loc": {
                  "start": {
                    "line": 74,
                    "column": 2
                  },
                  "end": {
                    "line": 74,
                    "column": 18
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "value",
                    "range": [
                      1878,
                      1883
                    ],
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 19
                      },
                      "end": {
                        "line": 74,
                        "column": 24
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "vertices",
                            "range": [
                              1894,
                              1902
                            ],
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 8
                              },
                              "end": {
                                "line": 75,
                                "column": 16
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  1905,
                                  1909
                                ],
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 23
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getVertices",
                                "range": [
                                  1910,
                                  1921
                                ],
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 35
                                  }
                                }
                              },
                              "range": [
                                1905,
                                1921
                              ],
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 19
                                },
                                "end": {
                                  "line": 75,
                                  "column": 35
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              1905,
                              1923
                            ],
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 19
                              },
                              "end": {
                                "line": 75,
                                "column": 37
                              }
                            }
                          },
                          "range": [
                            1894,
                            1923
                          ],
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 8
                            },
                            "end": {
                              "line": 75,
                              "column": 37
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        1890,
                        1924
                      ],
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 4
                        },
                        "end": {
                          "line": 75,
                          "column": 38
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              1933,
                              1941
                            ],
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 8
                              },
                              "end": {
                                "line": 76,
                                "column": 16
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "vertices",
                                "range": [
                                  1944,
                                  1952
                                ],
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 76,
                                    "column": 27
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "filter",
                                "range": [
                                  1953,
                                  1959
                                ],
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 28
                                  },
                                  "end": {
                                    "line": 76,
                                    "column": 34
                                  }
                                }
                              },
                              "range": [
                                1944,
                                1959
                              ],
                              "loc": {
                                "start": {
                                  "line": 76,
                                  "column": 19
                                },
                                "end": {
                                  "line": 76,
                                  "column": 34
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "id": null,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "name": "vertex",
                                    "range": [
                                      1961,
                                      1967
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 42
                                      }
                                    }
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "BinaryExpression",
                                        "operator": "===",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "vertex",
                                            "range": [
                                              1987,
                                              1993
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 77,
                                                "column": 13
                                              },
                                              "end": {
                                                "line": 77,
                                                "column": 19
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              1994,
                                              1999
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 77,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 77,
                                                "column": 25
                                              }
                                            }
                                          },
                                          "range": [
                                            1987,
                                            1999
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            2004,
                                            2009
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 77,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 77,
                                              "column": 35
                                            }
                                          }
                                        },
                                        "range": [
                                          1987,
                                          2009
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 77,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 77,
                                            "column": 35
                                          }
                                        }
                                      },
                                      "range": [
                                        1980,
                                        2010
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 77,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 77,
                                          "column": 36
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    1972,
                                    2016
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 78,
                                      "column": 5
                                    }
                                  }
                                },
                                "generator": false,
                                "expression": false,
                                "range": [
                                  1960,
                                  2016
                                ],
                                "loc": {
                                  "start": {
                                    "line": 76,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 78,
                                    "column": 5
                                  }
                                }
                              }
                            ],
                            "range": [
                              1944,
                              2017
                            ],
                            "loc": {
                              "start": {
                                "line": 76,
                                "column": 19
                              },
                              "end": {
                                "line": 78,
                                "column": 6
                              }
                            }
                          },
                          "range": [
                            1933,
                            2017
                          ],
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 8
                            },
                            "end": {
                              "line": 78,
                              "column": 6
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        1929,
                        2018
                      ],
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 4
                        },
                        "end": {
                          "line": 78,
                          "column": 7
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": ">",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              2028,
                              2036
                            ],
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 8
                              },
                              "end": {
                                "line": 80,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "length",
                            "range": [
                              2037,
                              2043
                            ],
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 17
                              },
                              "end": {
                                "line": 80,
                                "column": 23
                              }
                            }
                          },
                          "range": [
                            2028,
                            2043
                          ],
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 23
                            }
                          }
                        },
                        "right": {
                          "type": "Literal",
                          "value": 0,
                          "raw": "0",
                          "range": [
                            2046,
                            2047
                          ],
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 26
                            },
                            "end": {
                              "line": 80,
                              "column": 27
                            }
                          }
                        },
                        "range": [
                          2028,
                          2047
                        ],
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 8
                          },
                          "end": {
                            "line": 80,
                            "column": 27
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "argument": {
                              "type": "MemberExpression",
                              "computed": true,
                              "object": {
                                "type": "Identifier",
                                "name": "matching",
                                "range": [
                                  2063,
                                  2071
                                ],
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Literal",
                                "value": 0,
                                "raw": "0",
                                "range": [
                                  2072,
                                  2073
                                ],
                                "loc": {
                                  "start": {
                                    "line": 81,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 81,
                                    "column": 23
                                  }
                                }
                              },
                              "range": [
                                2063,
                                2074
                              ],
                              "loc": {
                                "start": {
                                  "line": 81,
                                  "column": 13
                                },
                                "end": {
                                  "line": 81,
                                  "column": 24
                                }
                              }
                            },
                            "range": [
                              2056,
                              2075
                            ],
                            "loc": {
                              "start": {
                                "line": 81,
                                "column": 6
                              },
                              "end": {
                                "line": 81,
                                "column": 25
                              }
                            }
                          }
                        ],
                        "range": [
                          2048,
                          2081
                        ],
                        "loc": {
                          "start": {
                            "line": 80,
                            "column": 28
                          },
                          "end": {
                            "line": 82,
                            "column": 5
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        2024,
                        2081
                      ],
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 4
                        },
                        "end": {
                          "line": 82,
                          "column": 5
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "undefined",
                        "range": [
                          2094,
                          2103
                        ],
                        "loc": {
                          "start": {
                            "line": 84,
                            "column": 11
                          },
                          "end": {
                            "line": 84,
                            "column": 20
                          }
                        }
                      },
                      "range": [
                        2087,
                        2104
                      ],
                      "loc": {
                        "start": {
                          "line": 84,
                          "column": 4
                        },
                        "end": {
                          "line": 84,
                          "column": 21
                        }
                      }
                    }
                  ],
                  "range": [
                    1884,
                    2108
                  ],
                  "loc": {
                    "start": {
                      "line": 74,
                      "column": 25
                    },
                    "end": {
                      "line": 85,
                      "column": 3
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  1877,
                  2108
                ],
                "loc": {
                  "start": {
                    "line": 74,
                    "column": 18
                  },
                  "end": {
                    "line": 85,
                    "column": 3
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                1861,
                2108
              ],
              "loc": {
                "start": {
                  "line": 74,
                  "column": 2
                },
                "end": {
                  "line": 85,
                  "column": 3
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {value} value\n   * @return {Vertex} instance of Vertex in graph with value, else undefined\n   ",
                  "range": [
                    1746,
                    1858
                  ],
                  "loc": {
                    "start": {
                      "line": 70,
                      "column": 2
                    },
                    "end": {
                      "line": 73,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {startVertex} Vertex (or value of Vertex) in graph to start\n   * @param {endVertex} Vertex (or value of Vertex) in graph to end\n   * @throws {DuplicateEdgeError} when adding edge whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    2112,
                    2389
                  ],
                  "loc": {
                    "start": {
                      "line": 87,
                      "column": 2
                    },
                    "end": {
                      "line": 92,
                      "column": 5
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "addEdge",
                "range": [
                  2393,
                  2400
                ],
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 3
                  },
                  "end": {
                    "line": 93,
                    "column": 10
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "startVertex",
                    "range": [
                      2401,
                      2412
                    ],
                    "loc": {
                      "start": {
                        "line": 93,
                        "column": 11
                      },
                      "end": {
                        "line": 93,
                        "column": 22
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "endVertex",
                    "range": [
                      2414,
                      2423
                    ],
                    "loc": {
                      "start": {
                        "line": 93,
                        "column": 24
                      },
                      "end": {
                        "line": 93,
                        "column": 33
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "BinaryExpression",
                          "operator": "instanceof",
                          "left": {
                            "type": "Identifier",
                            "name": "startVertex",
                            "range": [
                              2437,
                              2448
                            ],
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 11
                              },
                              "end": {
                                "line": 94,
                                "column": 22
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "Vertex",
                            "range": [
                              2460,
                              2466
                            ],
                            "loc": {
                              "start": {
                                "line": 94,
                                "column": 34
                              },
                              "end": {
                                "line": 94,
                                "column": 40
                              }
                            }
                          },
                          "range": [
                            2437,
                            2466
                          ],
                          "loc": {
                            "start": {
                              "line": 94,
                              "column": 11
                            },
                            "end": {
                              "line": 94,
                              "column": 40
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          2435,
                          2467
                        ],
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 9
                          },
                          "end": {
                            "line": 94,
                            "column": 41
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "name": "startVertex",
                                "range": [
                                  2477,
                                  2488
                                ],
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 18
                                  }
                                }
                              },
                              "right": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2491,
                                      2495
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 25
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "getVertexByValue",
                                    "range": [
                                      2496,
                                      2512
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 42
                                      }
                                    }
                                  },
                                  "range": [
                                    2491,
                                    2512
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 42
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "startVertex",
                                    "range": [
                                      2513,
                                      2524
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 54
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  2491,
                                  2525
                                ],
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 55
                                  }
                                }
                              },
                              "range": [
                                2477,
                                2525
                              ],
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 7
                                },
                                "end": {
                                  "line": 95,
                                  "column": 55
                                }
                              }
                            },
                            "range": [
                              2477,
                              2526
                            ],
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 7
                              },
                              "end": {
                                "line": 95,
                                "column": 56
                              }
                            }
                          }
                        ],
                        "range": [
                          2468,
                          2533
                        ],
                        "loc": {
                          "start": {
                            "line": 94,
                            "column": 42
                          },
                          "end": {
                            "line": 96,
                            "column": 6
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        2431,
                        2533
                      ],
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 5
                        },
                        "end": {
                          "line": 96,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "BinaryExpression",
                          "operator": "instanceof",
                          "left": {
                            "type": "Identifier",
                            "name": "endVertex",
                            "range": [
                              2546,
                              2555
                            ],
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 11
                              },
                              "end": {
                                "line": 98,
                                "column": 20
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "Vertex",
                            "range": [
                              2567,
                              2573
                            ],
                            "loc": {
                              "start": {
                                "line": 98,
                                "column": 32
                              },
                              "end": {
                                "line": 98,
                                "column": 38
                              }
                            }
                          },
                          "range": [
                            2546,
                            2573
                          ],
                          "loc": {
                            "start": {
                              "line": 98,
                              "column": 11
                            },
                            "end": {
                              "line": 98,
                              "column": 38
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          2544,
                          2574
                        ],
                        "loc": {
                          "start": {
                            "line": 98,
                            "column": 9
                          },
                          "end": {
                            "line": 98,
                            "column": 39
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "name": "endVertex",
                                "range": [
                                  2584,
                                  2593
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 16
                                  }
                                }
                              },
                              "right": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      2596,
                                      2600
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 23
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "getVertexByValue",
                                    "range": [
                                      2601,
                                      2617
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 40
                                      }
                                    }
                                  },
                                  "range": [
                                    2596,
                                    2617
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 99,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 99,
                                      "column": 40
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "endVertex",
                                    "range": [
                                      2618,
                                      2627
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 99,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 99,
                                        "column": 50
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  2596,
                                  2628
                                ],
                                "loc": {
                                  "start": {
                                    "line": 99,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 99,
                                    "column": 51
                                  }
                                }
                              },
                              "range": [
                                2584,
                                2628
                              ],
                              "loc": {
                                "start": {
                                  "line": 99,
                                  "column": 7
                                },
                                "end": {
                                  "line": 99,
                                  "column": 51
                                }
                              }
                            },
                            "range": [
                              2584,
                              2629
                            ],
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 7
                              },
                              "end": {
                                "line": 99,
                                "column": 52
                              }
                            }
                          }
                        ],
                        "range": [
                          2575,
                          2636
                        ],
                        "loc": {
                          "start": {
                            "line": 98,
                            "column": 40
                          },
                          "end": {
                            "line": 100,
                            "column": 6
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        2540,
                        2636
                      ],
                      "loc": {
                        "start": {
                          "line": 98,
                          "column": 5
                        },
                        "end": {
                          "line": 100,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "ThisExpression",
                            "range": [
                              2647,
                              2651
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 9
                              },
                              "end": {
                                "line": 102,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "hasEdge",
                            "range": [
                              2652,
                              2659
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 14
                              },
                              "end": {
                                "line": 102,
                                "column": 21
                              }
                            }
                          },
                          "range": [
                            2647,
                            2659
                          ],
                          "loc": {
                            "start": {
                              "line": 102,
                              "column": 9
                            },
                            "end": {
                              "line": 102,
                              "column": 21
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "startVertex",
                              "range": [
                                2660,
                                2671
                              ],
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 22
                                },
                                "end": {
                                  "line": 102,
                                  "column": 33
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "value",
                              "range": [
                                2672,
                                2677
                              ],
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 34
                                },
                                "end": {
                                  "line": 102,
                                  "column": 39
                                }
                              }
                            },
                            "range": [
                              2660,
                              2677
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 22
                              },
                              "end": {
                                "line": 102,
                                "column": 39
                              }
                            }
                          },
                          {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "Identifier",
                              "name": "endVertex",
                              "range": [
                                2679,
                                2688
                              ],
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 41
                                },
                                "end": {
                                  "line": 102,
                                  "column": 50
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "value",
                              "range": [
                                2689,
                                2694
                              ],
                              "loc": {
                                "start": {
                                  "line": 102,
                                  "column": 51
                                },
                                "end": {
                                  "line": 102,
                                  "column": 56
                                }
                              }
                            },
                            "range": [
                              2679,
                              2694
                            ],
                            "loc": {
                              "start": {
                                "line": 102,
                                "column": 41
                              },
                              "end": {
                                "line": 102,
                                "column": 56
                              }
                            }
                          }
                        ],
                        "range": [
                          2647,
                          2695
                        ],
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 9
                          },
                          "end": {
                            "line": 102,
                            "column": 57
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ThrowStatement",
                            "argument": {
                              "type": "NewExpression",
                              "callee": {
                                "type": "Identifier",
                                "name": "DuplicateEdgeError",
                                "range": [
                                  2715,
                                  2733
                                ],
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 35
                                  }
                                }
                              },
                              "arguments": [
                                {
                                  "type": "BinaryExpression",
                                  "operator": "+",
                                  "left": {
                                    "type": "BinaryExpression",
                                    "operator": "+",
                                    "left": {
                                      "type": "BinaryExpression",
                                      "operator": "+",
                                      "left": {
                                        "type": "BinaryExpression",
                                        "operator": "+",
                                        "left": {
                                          "type": "Literal",
                                          "value": "Cannot add duplicate edge between '",
                                          "raw": "\"Cannot add duplicate edge between '\"",
                                          "range": [
                                            2734,
                                            2771
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 103,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 103,
                                              "column": 73
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "startVertex",
                                            "range": [
                                              2774,
                                              2785
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 103,
                                                "column": 76
                                              },
                                              "end": {
                                                "line": 103,
                                                "column": 87
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              2786,
                                              2791
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 103,
                                                "column": 88
                                              },
                                              "end": {
                                                "line": 103,
                                                "column": 93
                                              }
                                            }
                                          },
                                          "range": [
                                            2774,
                                            2791
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 103,
                                              "column": 76
                                            },
                                            "end": {
                                              "line": 103,
                                              "column": 93
                                            }
                                          }
                                        },
                                        "range": [
                                          2734,
                                          2791
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 36
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 93
                                          }
                                        }
                                      },
                                      "right": {
                                        "type": "Literal",
                                        "value": "' and '",
                                        "raw": "\"' and '\"",
                                        "range": [
                                          2794,
                                          2803
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 96
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 105
                                          }
                                        }
                                      },
                                      "range": [
                                        2734,
                                        2803
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 105
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "endVertex",
                                        "range": [
                                          2806,
                                          2815
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 108
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 117
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "value",
                                        "range": [
                                          2816,
                                          2821
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 103,
                                            "column": 118
                                          },
                                          "end": {
                                            "line": 103,
                                            "column": 123
                                          }
                                        }
                                      },
                                      "range": [
                                        2806,
                                        2821
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 103,
                                          "column": 108
                                        },
                                        "end": {
                                          "line": 103,
                                          "column": 123
                                        }
                                      }
                                    },
                                    "range": [
                                      2734,
                                      2821
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 123
                                      }
                                    }
                                  },
                                  "right": {
                                    "type": "Literal",
                                    "value": "' to graph.",
                                    "raw": "\"' to graph.\"",
                                    "range": [
                                      2824,
                                      2837
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 103,
                                        "column": 126
                                      },
                                      "end": {
                                        "line": 103,
                                        "column": 139
                                      }
                                    }
                                  },
                                  "range": [
                                    2734,
                                    2837
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 103,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 103,
                                      "column": 139
                                    }
                                  }
                                }
                              ],
                              "range": [
                                2711,
                                2838
                              ],
                              "loc": {
                                "start": {
                                  "line": 103,
                                  "column": 13
                                },
                                "end": {
                                  "line": 103,
                                  "column": 140
                                }
                              }
                            },
                            "range": [
                              2705,
                              2839
                            ],
                            "loc": {
                              "start": {
                                "line": 103,
                                "column": 7
                              },
                              "end": {
                                "line": 103,
                                "column": 141
                              }
                            }
                          }
                        ],
                        "range": [
                          2696,
                          2846
                        ],
                        "loc": {
                          "start": {
                            "line": 102,
                            "column": 58
                          },
                          "end": {
                            "line": 104,
                            "column": 6
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        2643,
                        2846
                      ],
                      "loc": {
                        "start": {
                          "line": 102,
                          "column": 5
                        },
                        "end": {
                          "line": 104,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "edge",
                            "range": [
                              2857,
                              2861
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 9
                              },
                              "end": {
                                "line": 106,
                                "column": 13
                              }
                            }
                          },
                          "init": {
                            "type": "NewExpression",
                            "callee": {
                              "type": "Identifier",
                              "name": "Edge",
                              "range": [
                                2868,
                                2872
                              ],
                              "loc": {
                                "start": {
                                  "line": 106,
                                  "column": 20
                                },
                                "end": {
                                  "line": 106,
                                  "column": 24
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "name": "startVertex",
                                "range": [
                                  2873,
                                  2884
                                ],
                                "loc": {
                                  "start": {
                                    "line": 106,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 106,
                                    "column": 36
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "name": "endVertex",
                                "range": [
                                  2886,
                                  2895
                                ],
                                "loc": {
                                  "start": {
                                    "line": 106,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 106,
                                    "column": 47
                                  }
                                }
                              }
                            ],
                            "range": [
                              2864,
                              2896
                            ],
                            "loc": {
                              "start": {
                                "line": 106,
                                "column": 16
                              },
                              "end": {
                                "line": 106,
                                "column": 48
                              }
                            }
                          },
                          "range": [
                            2857,
                            2896
                          ],
                          "loc": {
                            "start": {
                              "line": 106,
                              "column": 9
                            },
                            "end": {
                              "line": 106,
                              "column": 48
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        2853,
                        2897
                      ],
                      "loc": {
                        "start": {
                          "line": 106,
                          "column": 5
                        },
                        "end": {
                          "line": 106,
                          "column": 49
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                2903,
                                2907
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 5
                                },
                                "end": {
                                  "line": 107,
                                  "column": 9
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "_edges",
                              "range": [
                                2908,
                                2914
                              ],
                              "loc": {
                                "start": {
                                  "line": 107,
                                  "column": 10
                                },
                                "end": {
                                  "line": 107,
                                  "column": 16
                                }
                              }
                            },
                            "range": [
                              2903,
                              2914
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 5
                              },
                              "end": {
                                "line": 107,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "push",
                            "range": [
                              2915,
                              2919
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 17
                              },
                              "end": {
                                "line": 107,
                                "column": 21
                              }
                            }
                          },
                          "range": [
                            2903,
                            2919
                          ],
                          "loc": {
                            "start": {
                              "line": 107,
                              "column": 5
                            },
                            "end": {
                              "line": 107,
                              "column": 21
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "edge",
                            "range": [
                              2920,
                              2924
                            ],
                            "loc": {
                              "start": {
                                "line": 107,
                                "column": 22
                              },
                              "end": {
                                "line": 107,
                                "column": 26
                              }
                            }
                          }
                        ],
                        "range": [
                          2903,
                          2925
                        ],
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 5
                          },
                          "end": {
                            "line": 107,
                            "column": 27
                          }
                        }
                      },
                      "range": [
                        2903,
                        2926
                      ],
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 5
                        },
                        "end": {
                          "line": 107,
                          "column": 28
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "Line",
                          "value": " since this undirected graph, edges must go both ways",
                          "range": [
                            2933,
                            2988
                          ],
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 5
                            },
                            "end": {
                              "line": 109,
                              "column": 60
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "reverseEdge",
                            "range": [
                              2998,
                              3009
                            ],
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 9
                              },
                              "end": {
                                "line": 110,
                                "column": 20
                              }
                            }
                          },
                          "init": {
                            "type": "NewExpression",
                            "callee": {
                              "type": "Identifier",
                              "name": "Edge",
                              "range": [
                                3016,
                                3020
                              ],
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 27
                                },
                                "end": {
                                  "line": 110,
                                  "column": 31
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "name": "endVertex",
                                "range": [
                                  3021,
                                  3030
                                ],
                                "loc": {
                                  "start": {
                                    "line": 110,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 41
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "name": "startVertex",
                                "range": [
                                  3032,
                                  3043
                                ],
                                "loc": {
                                  "start": {
                                    "line": 110,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 54
                                  }
                                }
                              }
                            ],
                            "range": [
                              3012,
                              3044
                            ],
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 23
                              },
                              "end": {
                                "line": 110,
                                "column": 55
                              }
                            }
                          },
                          "range": [
                            2998,
                            3044
                          ],
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 9
                            },
                            "end": {
                              "line": 110,
                              "column": 55
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        2994,
                        3045
                      ],
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 5
                        },
                        "end": {
                          "line": 110,
                          "column": 56
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Line",
                          "value": " since this undirected graph, edges must go both ways",
                          "range": [
                            2933,
                            2988
                          ],
                          "loc": {
                            "start": {
                              "line": 109,
                              "column": 5
                            },
                            "end": {
                              "line": 109,
                              "column": 60
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "MemberExpression",
                            "computed": false,
                            "object": {
                              "type": "ThisExpression",
                              "range": [
                                3051,
                                3055
                              ],
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 5
                                },
                                "end": {
                                  "line": 111,
                                  "column": 9
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "name": "_edges",
                              "range": [
                                3056,
                                3062
                              ],
                              "loc": {
                                "start": {
                                  "line": 111,
                                  "column": 10
                                },
                                "end": {
                                  "line": 111,
                                  "column": 16
                                }
                              }
                            },
                            "range": [
                              3051,
                              3062
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 5
                              },
                              "end": {
                                "line": 111,
                                "column": 16
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "push",
                            "range": [
                              3063,
                              3067
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 17
                              },
                              "end": {
                                "line": 111,
                                "column": 21
                              }
                            }
                          },
                          "range": [
                            3051,
                            3067
                          ],
                          "loc": {
                            "start": {
                              "line": 111,
                              "column": 5
                            },
                            "end": {
                              "line": 111,
                              "column": 21
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "name": "reverseEdge",
                            "range": [
                              3068,
                              3079
                            ],
                            "loc": {
                              "start": {
                                "line": 111,
                                "column": 22
                              },
                              "end": {
                                "line": 111,
                                "column": 33
                              }
                            }
                          }
                        ],
                        "range": [
                          3051,
                          3080
                        ],
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 5
                          },
                          "end": {
                            "line": 111,
                            "column": 34
                          }
                        }
                      },
                      "range": [
                        3051,
                        3081
                      ],
                      "loc": {
                        "start": {
                          "line": 111,
                          "column": 5
                        },
                        "end": {
                          "line": 111,
                          "column": 35
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "ThisExpression",
                        "range": [
                          3095,
                          3099
                        ],
                        "loc": {
                          "start": {
                            "line": 113,
                            "column": 12
                          },
                          "end": {
                            "line": 113,
                            "column": 16
                          }
                        }
                      },
                      "range": [
                        3088,
                        3100
                      ],
                      "loc": {
                        "start": {
                          "line": 113,
                          "column": 5
                        },
                        "end": {
                          "line": 113,
                          "column": 17
                        }
                      }
                    }
                  ],
                  "range": [
                    2424,
                    3105
                  ],
                  "loc": {
                    "start": {
                      "line": 93,
                      "column": 34
                    },
                    "end": {
                      "line": 114,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  2400,
                  3105
                ],
                "loc": {
                  "start": {
                    "line": 93,
                    "column": 10
                  },
                  "end": {
                    "line": 114,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                2393,
                3105
              ],
              "loc": {
                "start": {
                  "line": 93,
                  "column": 3
                },
                "end": {
                  "line": 114,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n   * @param {startVertex} Vertex (or value of Vertex) in graph to start\n   * @param {endVertex} Vertex (or value of Vertex) in graph to end\n   * @throws {DuplicateEdgeError} when adding edge whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
                  "range": [
                    2112,
                    2389
                  ],
                  "loc": {
                    "start": {
                      "line": 87,
                      "column": 2
                    },
                    "end": {
                      "line": 92,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} array of Edge instances present in Graph.\n    ",
                  "range": [
                    3110,
                    3184
                  ],
                  "loc": {
                    "start": {
                      "line": 116,
                      "column": 3
                    },
                    "end": {
                      "line": 118,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getEdges",
                "range": [
                  3188,
                  3196
                ],
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 3
                  },
                  "end": {
                    "line": 119,
                    "column": 11
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "MemberExpression",
                        "computed": false,
                        "object": {
                          "type": "ThisExpression",
                          "range": [
                            3212,
                            3216
                          ],
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 12
                            },
                            "end": {
                              "line": 120,
                              "column": 16
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "name": "_edges",
                          "range": [
                            3217,
                            3223
                          ],
                          "loc": {
                            "start": {
                              "line": 120,
                              "column": 17
                            },
                            "end": {
                              "line": 120,
                              "column": 23
                            }
                          }
                        },
                        "range": [
                          3212,
                          3223
                        ],
                        "loc": {
                          "start": {
                            "line": 120,
                            "column": 12
                          },
                          "end": {
                            "line": 120,
                            "column": 23
                          }
                        }
                      },
                      "range": [
                        3205,
                        3224
                      ],
                      "loc": {
                        "start": {
                          "line": 120,
                          "column": 5
                        },
                        "end": {
                          "line": 120,
                          "column": 24
                        }
                      }
                    }
                  ],
                  "range": [
                    3198,
                    3229
                  ],
                  "loc": {
                    "start": {
                      "line": 119,
                      "column": 13
                    },
                    "end": {
                      "line": 121,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  3196,
                  3229
                ],
                "loc": {
                  "start": {
                    "line": 119,
                    "column": 11
                  },
                  "end": {
                    "line": 121,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                3188,
                3229
              ],
              "loc": {
                "start": {
                  "line": 119,
                  "column": 3
                },
                "end": {
                  "line": 121,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} array of Edge instances present in Graph.\n    ",
                  "range": [
                    3110,
                    3184
                  ],
                  "loc": {
                    "start": {
                      "line": 116,
                      "column": 3
                    },
                    "end": {
                      "line": 118,
                      "column": 6
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @param {startValue} start value of edge to locate\n    * @param {endValue} end value of edge to locate\n    * @return {Edge} returns Edge instance in Graph if exists, otherwise returns undefined\n    ",
                  "range": [
                    3234,
                    3443
                  ],
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 3
                    },
                    "end": {
                      "line": 127,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getEdgeByValues",
                "range": [
                  3447,
                  3462
                ],
                "loc": {
                  "start": {
                    "line": 128,
                    "column": 3
                  },
                  "end": {
                    "line": 128,
                    "column": 18
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "startValue",
                    "range": [
                      3463,
                      3473
                    ],
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 19
                      },
                      "end": {
                        "line": 128,
                        "column": 29
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "endValue",
                    "range": [
                      3475,
                      3483
                    ],
                    "loc": {
                      "start": {
                        "line": 128,
                        "column": 31
                      },
                      "end": {
                        "line": 128,
                        "column": 39
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "edges",
                            "range": [
                              3495,
                              3500
                            ],
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 9
                              },
                              "end": {
                                "line": 129,
                                "column": 14
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  3503,
                                  3507
                                ],
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getEdges",
                                "range": [
                                  3508,
                                  3516
                                ],
                                "loc": {
                                  "start": {
                                    "line": 129,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 30
                                  }
                                }
                              },
                              "range": [
                                3503,
                                3516
                              ],
                              "loc": {
                                "start": {
                                  "line": 129,
                                  "column": 17
                                },
                                "end": {
                                  "line": 129,
                                  "column": 30
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              3503,
                              3518
                            ],
                            "loc": {
                              "start": {
                                "line": 129,
                                "column": 17
                              },
                              "end": {
                                "line": 129,
                                "column": 32
                              }
                            }
                          },
                          "range": [
                            3495,
                            3518
                          ],
                          "loc": {
                            "start": {
                              "line": 129,
                              "column": 9
                            },
                            "end": {
                              "line": 129,
                              "column": 32
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        3491,
                        3519
                      ],
                      "loc": {
                        "start": {
                          "line": 129,
                          "column": 5
                        },
                        "end": {
                          "line": 129,
                          "column": 33
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              3529,
                              3537
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 9
                              },
                              "end": {
                                "line": 130,
                                "column": 17
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "edges",
                                "range": [
                                  3540,
                                  3545
                                ],
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "filter",
                                "range": [
                                  3546,
                                  3552
                                ],
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 130,
                                    "column": 32
                                  }
                                }
                              },
                              "range": [
                                3540,
                                3552
                              ],
                              "loc": {
                                "start": {
                                  "line": 130,
                                  "column": 20
                                },
                                "end": {
                                  "line": 130,
                                  "column": 32
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "id": null,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "name": "edge",
                                    "range": [
                                      3554,
                                      3558
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 130,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 130,
                                        "column": 38
                                      }
                                    }
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "LogicalExpression",
                                        "operator": "&&",
                                        "left": {
                                          "type": "BinaryExpression",
                                          "operator": "===",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "edge",
                                                "range": [
                                                  3579,
                                                  3583
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 18
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "startVertex",
                                                "range": [
                                                  3584,
                                                  3595
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 19
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 30
                                                  }
                                                }
                                              },
                                              "range": [
                                                3579,
                                                3595
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 30
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "value",
                                              "range": [
                                                3596,
                                                3601
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "range": [
                                              3579,
                                              3601
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "Identifier",
                                            "name": "startValue",
                                            "range": [
                                              3606,
                                              3616
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 51
                                              }
                                            }
                                          },
                                          "range": [
                                            3579,
                                            3616
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 51
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "BinaryExpression",
                                          "operator": "===",
                                          "left": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "MemberExpression",
                                              "computed": false,
                                              "object": {
                                                "type": "Identifier",
                                                "name": "edge",
                                                "range": [
                                                  3620,
                                                  3624
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 59
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "name": "endVertex",
                                                "range": [
                                                  3625,
                                                  3634
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 131,
                                                    "column": 60
                                                  },
                                                  "end": {
                                                    "line": 131,
                                                    "column": 69
                                                  }
                                                }
                                              },
                                              "range": [
                                                3620,
                                                3634
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 55
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 69
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "value",
                                              "range": [
                                                3635,
                                                3640
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 131,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 131,
                                                  "column": 75
                                                }
                                              }
                                            },
                                            "range": [
                                              3620,
                                              3640
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 75
                                              }
                                            }
                                          },
                                          "right": {
                                            "type": "Identifier",
                                            "name": "endValue",
                                            "range": [
                                              3645,
                                              3653
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 131,
                                                "column": 80
                                              },
                                              "end": {
                                                "line": 131,
                                                "column": 88
                                              }
                                            }
                                          },
                                          "range": [
                                            3620,
                                            3653
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 131,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 131,
                                              "column": 88
                                            }
                                          }
                                        },
                                        "range": [
                                          3579,
                                          3653
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 131,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 131,
                                            "column": 88
                                          }
                                        }
                                      },
                                      "range": [
                                        3572,
                                        3654
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 131,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 131,
                                          "column": 89
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    3563,
                                    3661
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 130,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 132,
                                      "column": 6
                                    }
                                  }
                                },
                                "generator": false,
                                "expression": false,
                                "range": [
                                  3553,
                                  3661
                                ],
                                "loc": {
                                  "start": {
                                    "line": 130,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 132,
                                    "column": 6
                                  }
                                }
                              }
                            ],
                            "range": [
                              3540,
                              3662
                            ],
                            "loc": {
                              "start": {
                                "line": 130,
                                "column": 20
                              },
                              "end": {
                                "line": 132,
                                "column": 7
                              }
                            }
                          },
                          "range": [
                            3529,
                            3662
                          ],
                          "loc": {
                            "start": {
                              "line": 130,
                              "column": 9
                            },
                            "end": {
                              "line": 132,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        3525,
                        3663
                      ],
                      "loc": {
                        "start": {
                          "line": 130,
                          "column": 5
                        },
                        "end": {
                          "line": 132,
                          "column": 8
                        }
                      }
                    },
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "BinaryExpression",
                        "operator": ">",
                        "left": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              3674,
                              3682
                            ],
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 9
                              },
                              "end": {
                                "line": 134,
                                "column": 17
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "length",
                            "range": [
                              3683,
                              3689
                            ],
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 18
                              },
                              "end": {
                                "line": 134,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            3674,
                            3689
                          ],
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 9
                            },
                            "end": {
                              "line": 134,
                              "column": 24
                            }
                          }
                        },
                        "right": {
                          "type": "Literal",
                          "value": 0,
                          "raw": "0",
                          "range": [
                            3692,
                            3693
                          ],
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 27
                            },
                            "end": {
                              "line": 134,
                              "column": 28
                            }
                          }
                        },
                        "range": [
                          3674,
                          3693
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 9
                          },
                          "end": {
                            "line": 134,
                            "column": 28
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ReturnStatement",
                            "argument": {
                              "type": "MemberExpression",
                              "computed": true,
                              "object": {
                                "type": "Identifier",
                                "name": "matching",
                                "range": [
                                  3710,
                                  3718
                                ],
                                "loc": {
                                  "start": {
                                    "line": 135,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 135,
                                    "column": 22
                                  }
                                }
                              },
                              "property": {
                                "type": "Literal",
                                "value": 0,
                                "raw": "0",
                                "range": [
                                  3719,
                                  3720
                                ],
                                "loc": {
                                  "start": {
                                    "line": 135,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 135,
                                    "column": 24
                                  }
                                }
                              },
                              "range": [
                                3710,
                                3721
                              ],
                              "loc": {
                                "start": {
                                  "line": 135,
                                  "column": 14
                                },
                                "end": {
                                  "line": 135,
                                  "column": 25
                                }
                              }
                            },
                            "range": [
                              3703,
                              3722
                            ],
                            "loc": {
                              "start": {
                                "line": 135,
                                "column": 7
                              },
                              "end": {
                                "line": 135,
                                "column": 26
                              }
                            }
                          }
                        ],
                        "range": [
                          3694,
                          3729
                        ],
                        "loc": {
                          "start": {
                            "line": 134,
                            "column": 29
                          },
                          "end": {
                            "line": 136,
                            "column": 6
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        3670,
                        3729
                      ],
                      "loc": {
                        "start": {
                          "line": 134,
                          "column": 5
                        },
                        "end": {
                          "line": 136,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "undefined",
                        "range": [
                          3743,
                          3752
                        ],
                        "loc": {
                          "start": {
                            "line": 138,
                            "column": 12
                          },
                          "end": {
                            "line": 138,
                            "column": 21
                          }
                        }
                      },
                      "range": [
                        3736,
                        3753
                      ],
                      "loc": {
                        "start": {
                          "line": 138,
                          "column": 5
                        },
                        "end": {
                          "line": 138,
                          "column": 22
                        }
                      }
                    }
                  ],
                  "range": [
                    3484,
                    3758
                  ],
                  "loc": {
                    "start": {
                      "line": 128,
                      "column": 40
                    },
                    "end": {
                      "line": 139,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  3462,
                  3758
                ],
                "loc": {
                  "start": {
                    "line": 128,
                    "column": 18
                  },
                  "end": {
                    "line": 139,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                3447,
                3758
              ],
              "loc": {
                "start": {
                  "line": 128,
                  "column": 3
                },
                "end": {
                  "line": 139,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @param {startValue} start value of edge to locate\n    * @param {endValue} end value of edge to locate\n    * @return {Edge} returns Edge instance in Graph if exists, otherwise returns undefined\n    ",
                  "range": [
                    3234,
                    3443
                  ],
                  "loc": {
                    "start": {
                      "line": 123,
                      "column": 3
                    },
                    "end": {
                      "line": 127,
                      "column": 6
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @param {startVertex} start value of edge to locate\n    * @param {endVertex} end value of edge to locate\n    * @return {Boolean} true if any edge has these start and end values else false\n    ",
                  "range": [
                    3763,
                    3966
                  ],
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 3
                    },
                    "end": {
                      "line": 145,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "hasEdge",
                "range": [
                  3970,
                  3977
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 3
                  },
                  "end": {
                    "line": 146,
                    "column": 10
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "startVertex",
                    "range": [
                      3978,
                      3989
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 11
                      },
                      "end": {
                        "line": 146,
                        "column": 22
                      }
                    }
                  },
                  {
                    "type": "Identifier",
                    "name": "endVertex",
                    "range": [
                      3991,
                      4000
                    ],
                    "loc": {
                      "start": {
                        "line": 146,
                        "column": 24
                      },
                      "end": {
                        "line": 146,
                        "column": 33
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "UnaryExpression",
                          "operator": "!",
                          "argument": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  4017,
                                  4021
                                ],
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 18
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getEdgeByValues",
                                "range": [
                                  4022,
                                  4037
                                ],
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 34
                                  }
                                }
                              },
                              "range": [
                                4017,
                                4037
                              ],
                              "loc": {
                                "start": {
                                  "line": 147,
                                  "column": 14
                                },
                                "end": {
                                  "line": 147,
                                  "column": 34
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "name": "startVertex",
                                "range": [
                                  4038,
                                  4049
                                ],
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 46
                                  }
                                }
                              },
                              {
                                "type": "Identifier",
                                "name": "endVertex",
                                "range": [
                                  4051,
                                  4060
                                ],
                                "loc": {
                                  "start": {
                                    "line": 147,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 147,
                                    "column": 57
                                  }
                                }
                              }
                            ],
                            "range": [
                              4017,
                              4061
                            ],
                            "loc": {
                              "start": {
                                "line": 147,
                                "column": 14
                              },
                              "end": {
                                "line": 147,
                                "column": 58
                              }
                            }
                          },
                          "prefix": true,
                          "range": [
                            4016,
                            4061
                          ],
                          "loc": {
                            "start": {
                              "line": 147,
                              "column": 13
                            },
                            "end": {
                              "line": 147,
                              "column": 58
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          4015,
                          4061
                        ],
                        "loc": {
                          "start": {
                            "line": 147,
                            "column": 12
                          },
                          "end": {
                            "line": 147,
                            "column": 58
                          }
                        }
                      },
                      "range": [
                        4008,
                        4062
                      ],
                      "loc": {
                        "start": {
                          "line": 147,
                          "column": 5
                        },
                        "end": {
                          "line": 147,
                          "column": 59
                        }
                      }
                    }
                  ],
                  "range": [
                    4001,
                    4067
                  ],
                  "loc": {
                    "start": {
                      "line": 146,
                      "column": 34
                    },
                    "end": {
                      "line": 148,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  3977,
                  4067
                ],
                "loc": {
                  "start": {
                    "line": 146,
                    "column": 10
                  },
                  "end": {
                    "line": 148,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                3970,
                4067
              ],
              "loc": {
                "start": {
                  "line": 146,
                  "column": 3
                },
                "end": {
                  "line": 148,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @param {startVertex} start value of edge to locate\n    * @param {endVertex} end value of edge to locate\n    * @return {Boolean} true if any edge has these start and end values else false\n    ",
                  "range": [
                    3763,
                    3966
                  ],
                  "loc": {
                    "start": {
                      "line": 141,
                      "column": 3
                    },
                    "end": {
                      "line": 145,
                      "column": 6
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} array of arrays; each entry represents adjacency for row;\n    *         each entry in each sub-array represents adjacency for column;\n    *         if A[i][j] = 1, there is an edge from i to j.\n    ",
                  "range": [
                    4072,
                    4298
                  ],
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 3
                    },
                    "end": {
                      "line": 154,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getAdjacencyMatrix",
                "range": [
                  4302,
                  4320
                ],
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 3
                  },
                  "end": {
                    "line": 155,
                    "column": 21
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "matrix",
                            "range": [
                              4333,
                              4339
                            ],
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 9
                              },
                              "end": {
                                "line": 156,
                                "column": 15
                              }
                            }
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "elements": [],
                            "range": [
                              4342,
                              4344
                            ],
                            "loc": {
                              "start": {
                                "line": 156,
                                "column": 18
                              },
                              "end": {
                                "line": 156,
                                "column": 20
                              }
                            }
                          },
                          "range": [
                            4333,
                            4344
                          ],
                          "loc": {
                            "start": {
                              "line": 156,
                              "column": 9
                            },
                            "end": {
                              "line": 156,
                              "column": 20
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        4329,
                        4345
                      ],
                      "loc": {
                        "start": {
                          "line": 156,
                          "column": 5
                        },
                        "end": {
                          "line": 156,
                          "column": 21
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "vertices",
                            "range": [
                              4355,
                              4363
                            ],
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 9
                              },
                              "end": {
                                "line": 157,
                                "column": 17
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  4366,
                                  4370
                                ],
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 24
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getVertices",
                                "range": [
                                  4371,
                                  4382
                                ],
                                "loc": {
                                  "start": {
                                    "line": 157,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 157,
                                    "column": 36
                                  }
                                }
                              },
                              "range": [
                                4366,
                                4382
                              ],
                              "loc": {
                                "start": {
                                  "line": 157,
                                  "column": 20
                                },
                                "end": {
                                  "line": 157,
                                  "column": 36
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              4366,
                              4384
                            ],
                            "loc": {
                              "start": {
                                "line": 157,
                                "column": 20
                              },
                              "end": {
                                "line": 157,
                                "column": 38
                              }
                            }
                          },
                          "range": [
                            4355,
                            4384
                          ],
                          "loc": {
                            "start": {
                              "line": 157,
                              "column": 9
                            },
                            "end": {
                              "line": 157,
                              "column": 38
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        4351,
                        4385
                      ],
                      "loc": {
                        "start": {
                          "line": 157,
                          "column": 5
                        },
                        "end": {
                          "line": 157,
                          "column": 39
                        }
                      },
                      "trailingComments": [
                        {
                          "type": "Line",
                          "value": " where N = number of vertices, initialize N X N zero matrix",
                          "range": [
                            4391,
                            4452
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 5
                            },
                            "end": {
                              "line": 158,
                              "column": 66
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "vertices",
                            "range": [
                              4458,
                              4466
                            ],
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 5
                              },
                              "end": {
                                "line": 159,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "forEach",
                            "range": [
                              4467,
                              4474
                            ],
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 14
                              },
                              "end": {
                                "line": 159,
                                "column": 21
                              }
                            }
                          },
                          "range": [
                            4458,
                            4474
                          ],
                          "loc": {
                            "start": {
                              "line": 159,
                              "column": 5
                            },
                            "end": {
                              "line": 159,
                              "column": 21
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  4476,
                                  4482
                                ],
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 29
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "CallExpression",
                                    "callee": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "matrix",
                                        "range": [
                                          4495,
                                          4501
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "push",
                                        "range": [
                                          4502,
                                          4506
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 17
                                          }
                                        }
                                      },
                                      "range": [
                                        4495,
                                        4506
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 17
                                        }
                                      }
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "NewExpression",
                                            "callee": {
                                              "type": "Identifier",
                                              "name": "Array",
                                              "range": [
                                                4511,
                                                4516
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 160,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 160,
                                                  "column": 27
                                                }
                                              }
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "computed": false,
                                                "object": {
                                                  "type": "Identifier",
                                                  "name": "vertices",
                                                  "range": [
                                                    4517,
                                                    4525
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 160,
                                                      "column": 28
                                                    },
                                                    "end": {
                                                      "line": 160,
                                                      "column": 36
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "name": "length",
                                                  "range": [
                                                    4526,
                                                    4532
                                                  ],
                                                  "loc": {
                                                    "start": {
                                                      "line": 160,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 160,
                                                      "column": 43
                                                    }
                                                  }
                                                },
                                                "range": [
                                                  4517,
                                                  4532
                                                ],
                                                "loc": {
                                                  "start": {
                                                    "line": 160,
                                                    "column": 28
                                                  },
                                                  "end": {
                                                    "line": 160,
                                                    "column": 43
                                                  }
                                                }
                                              }
                                            ],
                                            "range": [
                                              4507,
                                              4533
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 44
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "fill",
                                            "range": [
                                              4534,
                                              4538
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 49
                                              }
                                            }
                                          },
                                          "range": [
                                            4507,
                                            4538
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 160,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 160,
                                              "column": 49
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Literal",
                                            "value": 0,
                                            "raw": "0",
                                            "range": [
                                              4539,
                                              4540
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 160,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 160,
                                                "column": 51
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          4507,
                                          4541
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 160,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 160,
                                            "column": 52
                                          }
                                        }
                                      }
                                    ],
                                    "range": [
                                      4495,
                                      4542
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 53
                                      }
                                    }
                                  },
                                  "range": [
                                    4495,
                                    4543
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 54
                                    }
                                  }
                                }
                              ],
                              "range": [
                                4487,
                                4550
                              ],
                              "loc": {
                                "start": {
                                  "line": 159,
                                  "column": 34
                                },
                                "end": {
                                  "line": 161,
                                  "column": 6
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              4475,
                              4550
                            ],
                            "loc": {
                              "start": {
                                "line": 159,
                                "column": 22
                              },
                              "end": {
                                "line": 161,
                                "column": 6
                              }
                            }
                          }
                        ],
                        "range": [
                          4458,
                          4551
                        ],
                        "loc": {
                          "start": {
                            "line": 159,
                            "column": 5
                          },
                          "end": {
                            "line": 161,
                            "column": 7
                          }
                        }
                      },
                      "range": [
                        4458,
                        4552
                      ],
                      "loc": {
                        "start": {
                          "line": 159,
                          "column": 5
                        },
                        "end": {
                          "line": 161,
                          "column": 8
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Line",
                          "value": " where N = number of vertices, initialize N X N zero matrix",
                          "range": [
                            4391,
                            4452
                          ],
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 5
                            },
                            "end": {
                              "line": 158,
                              "column": 66
                            }
                          }
                        }
                      ],
                      "trailingComments": [
                        {
                          "type": "Line",
                          "value": " if edge exists for A[i][j] (and A[j][i]) set cell to 1",
                          "range": [
                            4559,
                            4616
                          ],
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 5
                            },
                            "end": {
                              "line": 163,
                              "column": 62
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "edges",
                            "range": [
                              4626,
                              4631
                            ],
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 9
                              },
                              "end": {
                                "line": 164,
                                "column": 14
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  4634,
                                  4638
                                ],
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getEdges",
                                "range": [
                                  4639,
                                  4647
                                ],
                                "loc": {
                                  "start": {
                                    "line": 164,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 164,
                                    "column": 30
                                  }
                                }
                              },
                              "range": [
                                4634,
                                4647
                              ],
                              "loc": {
                                "start": {
                                  "line": 164,
                                  "column": 17
                                },
                                "end": {
                                  "line": 164,
                                  "column": 30
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              4634,
                              4649
                            ],
                            "loc": {
                              "start": {
                                "line": 164,
                                "column": 17
                              },
                              "end": {
                                "line": 164,
                                "column": 32
                              }
                            }
                          },
                          "range": [
                            4626,
                            4649
                          ],
                          "loc": {
                            "start": {
                              "line": 164,
                              "column": 9
                            },
                            "end": {
                              "line": 164,
                              "column": 32
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        4622,
                        4650
                      ],
                      "loc": {
                        "start": {
                          "line": 164,
                          "column": 5
                        },
                        "end": {
                          "line": 164,
                          "column": 33
                        }
                      },
                      "leadingComments": [
                        {
                          "type": "Line",
                          "value": " if edge exists for A[i][j] (and A[j][i]) set cell to 1",
                          "range": [
                            4559,
                            4616
                          ],
                          "loc": {
                            "start": {
                              "line": 163,
                              "column": 5
                            },
                            "end": {
                              "line": 163,
                              "column": 62
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "vertexValues",
                            "range": [
                              4660,
                              4672
                            ],
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 9
                              },
                              "end": {
                                "line": 165,
                                "column": 21
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  4675,
                                  4679
                                ],
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 28
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getVertexValues",
                                "range": [
                                  4680,
                                  4695
                                ],
                                "loc": {
                                  "start": {
                                    "line": 165,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 44
                                  }
                                }
                              },
                              "range": [
                                4675,
                                4695
                              ],
                              "loc": {
                                "start": {
                                  "line": 165,
                                  "column": 24
                                },
                                "end": {
                                  "line": 165,
                                  "column": 44
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              4675,
                              4697
                            ],
                            "loc": {
                              "start": {
                                "line": 165,
                                "column": 24
                              },
                              "end": {
                                "line": 165,
                                "column": 46
                              }
                            }
                          },
                          "range": [
                            4660,
                            4697
                          ],
                          "loc": {
                            "start": {
                              "line": 165,
                              "column": 9
                            },
                            "end": {
                              "line": 165,
                              "column": 46
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        4656,
                        4698
                      ],
                      "loc": {
                        "start": {
                          "line": 165,
                          "column": 5
                        },
                        "end": {
                          "line": 165,
                          "column": 47
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "edges",
                            "range": [
                              4704,
                              4709
                            ],
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 5
                              },
                              "end": {
                                "line": 166,
                                "column": 10
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "forEach",
                            "range": [
                              4710,
                              4717
                            ],
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 11
                              },
                              "end": {
                                "line": 166,
                                "column": 18
                              }
                            }
                          },
                          "range": [
                            4704,
                            4717
                          ],
                          "loc": {
                            "start": {
                              "line": 166,
                              "column": 5
                            },
                            "end": {
                              "line": 166,
                              "column": 18
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "edge",
                                "range": [
                                  4719,
                                  4723
                                ],
                                "loc": {
                                  "start": {
                                    "line": 166,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 166,
                                    "column": 24
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "id": {
                                        "type": "Identifier",
                                        "name": "startValue",
                                        "range": [
                                          4741,
                                          4751
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 21
                                          }
                                        }
                                      },
                                      "init": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "edge",
                                            "range": [
                                              4754,
                                              4758
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 167,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 167,
                                                "column": 28
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "startVertex",
                                            "range": [
                                              4759,
                                              4770
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 167,
                                                "column": 29
                                              },
                                              "end": {
                                                "line": 167,
                                                "column": 40
                                              }
                                            }
                                          },
                                          "range": [
                                            4754,
                                            4770
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 40
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            4771,
                                            4776
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 167,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 167,
                                              "column": 46
                                            }
                                          }
                                        },
                                        "range": [
                                          4754,
                                          4776
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 167,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 167,
                                            "column": 46
                                          }
                                        }
                                      },
                                      "range": [
                                        4741,
                                        4776
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 167,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 167,
                                          "column": 46
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "let",
                                  "range": [
                                    4737,
                                    4777
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 167,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 167,
                                      "column": 47
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "id": {
                                        "type": "Identifier",
                                        "name": "endValue",
                                        "range": [
                                          4789,
                                          4797
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "init": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "edge",
                                            "range": [
                                              4800,
                                              4804
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 168,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 168,
                                                "column": 26
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "endVertex",
                                            "range": [
                                              4805,
                                              4814
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 168,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 168,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            4800,
                                            4814
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            4815,
                                            4820
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 168,
                                              "column": 37
                                            },
                                            "end": {
                                              "line": 168,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "range": [
                                          4800,
                                          4820
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 168,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 168,
                                            "column": 42
                                          }
                                        }
                                      },
                                      "range": [
                                        4789,
                                        4820
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 168,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 168,
                                          "column": 42
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "let",
                                  "range": [
                                    4785,
                                    4821
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 168,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 168,
                                      "column": 43
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "id": {
                                        "type": "Identifier",
                                        "name": "startIndex",
                                        "range": [
                                          4833,
                                          4843
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 21
                                          }
                                        }
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "vertexValues",
                                            "range": [
                                              4846,
                                              4858
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "indexOf",
                                            "range": [
                                              4859,
                                              4866
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 37
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 44
                                              }
                                            }
                                          },
                                          "range": [
                                            4846,
                                            4866
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 169,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 169,
                                              "column": 44
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "startValue",
                                            "range": [
                                              4867,
                                              4877
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 169,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 169,
                                                "column": 55
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          4846,
                                          4878
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 169,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 169,
                                            "column": 56
                                          }
                                        }
                                      },
                                      "range": [
                                        4833,
                                        4878
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 56
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "let",
                                  "range": [
                                    4829,
                                    4879
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 57
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "id": {
                                        "type": "Identifier",
                                        "name": "endIndex",
                                        "range": [
                                          4891,
                                          4899
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "callee": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "vertexValues",
                                            "range": [
                                              4902,
                                              4914
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 34
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "indexOf",
                                            "range": [
                                              4915,
                                              4922
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 42
                                              }
                                            }
                                          },
                                          "range": [
                                            4902,
                                            4922
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 42
                                            }
                                          }
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "name": "endValue",
                                            "range": [
                                              4923,
                                              4931
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 51
                                              }
                                            }
                                          }
                                        ],
                                        "range": [
                                          4902,
                                          4932
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 52
                                          }
                                        }
                                      },
                                      "range": [
                                        4891,
                                        4932
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 52
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "let",
                                  "range": [
                                    4887,
                                    4933
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 170,
                                      "column": 53
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": true,
                                      "object": {
                                        "type": "MemberExpression",
                                        "computed": true,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "matrix",
                                          "range": [
                                            4941,
                                            4947
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 171,
                                              "column": 7
                                            },
                                            "end": {
                                              "line": 171,
                                              "column": 13
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "startIndex",
                                          "range": [
                                            4948,
                                            4958
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 171,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 171,
                                              "column": 24
                                            }
                                          }
                                        },
                                        "range": [
                                          4941,
                                          4959
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 7
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 25
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "endIndex",
                                        "range": [
                                          4960,
                                          4968
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 171,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 171,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "range": [
                                        4941,
                                        4969
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 171,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 171,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": 1,
                                      "raw": "1",
                                      "range": [
                                        4972,
                                        4973
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 171,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 171,
                                          "column": 39
                                        }
                                      }
                                    },
                                    "range": [
                                      4941,
                                      4973
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 171,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 171,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "range": [
                                    4941,
                                    4974
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 171,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 171,
                                      "column": 40
                                    }
                                  }
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": true,
                                      "object": {
                                        "type": "MemberExpression",
                                        "computed": true,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "matrix",
                                          "range": [
                                            4982,
                                            4988
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 172,
                                              "column": 7
                                            },
                                            "end": {
                                              "line": 172,
                                              "column": 13
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "endIndex",
                                          "range": [
                                            4989,
                                            4997
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 172,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 172,
                                              "column": 22
                                            }
                                          }
                                        },
                                        "range": [
                                          4982,
                                          4998
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 7
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 23
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "startIndex",
                                        "range": [
                                          4999,
                                          5009
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 172,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 172,
                                            "column": 34
                                          }
                                        }
                                      },
                                      "range": [
                                        4982,
                                        5010
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 172,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 172,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "Literal",
                                      "value": 1,
                                      "raw": "1",
                                      "range": [
                                        5013,
                                        5014
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 172,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 172,
                                          "column": 39
                                        }
                                      }
                                    },
                                    "range": [
                                      4982,
                                      5014
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 172,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 172,
                                        "column": 39
                                      }
                                    }
                                  },
                                  "range": [
                                    4982,
                                    5015
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 172,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 172,
                                      "column": 40
                                    }
                                  }
                                }
                              ],
                              "range": [
                                4728,
                                5022
                              ],
                              "loc": {
                                "start": {
                                  "line": 166,
                                  "column": 29
                                },
                                "end": {
                                  "line": 173,
                                  "column": 6
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              4718,
                              5022
                            ],
                            "loc": {
                              "start": {
                                "line": 166,
                                "column": 19
                              },
                              "end": {
                                "line": 173,
                                "column": 6
                              }
                            }
                          }
                        ],
                        "range": [
                          4704,
                          5023
                        ],
                        "loc": {
                          "start": {
                            "line": 166,
                            "column": 5
                          },
                          "end": {
                            "line": 173,
                            "column": 7
                          }
                        }
                      },
                      "range": [
                        4704,
                        5024
                      ],
                      "loc": {
                        "start": {
                          "line": 166,
                          "column": 5
                        },
                        "end": {
                          "line": 173,
                          "column": 8
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "matrix",
                        "range": [
                          5037,
                          5043
                        ],
                        "loc": {
                          "start": {
                            "line": 174,
                            "column": 12
                          },
                          "end": {
                            "line": 174,
                            "column": 18
                          }
                        }
                      },
                      "range": [
                        5030,
                        5044
                      ],
                      "loc": {
                        "start": {
                          "line": 174,
                          "column": 5
                        },
                        "end": {
                          "line": 174,
                          "column": 19
                        }
                      }
                    }
                  ],
                  "range": [
                    4322,
                    5049
                  ],
                  "loc": {
                    "start": {
                      "line": 155,
                      "column": 23
                    },
                    "end": {
                      "line": 175,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  4320,
                  5049
                ],
                "loc": {
                  "start": {
                    "line": 155,
                    "column": 21
                  },
                  "end": {
                    "line": 175,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                4302,
                5049
              ],
              "loc": {
                "start": {
                  "line": 155,
                  "column": 3
                },
                "end": {
                  "line": 175,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} array of arrays; each entry represents adjacency for row;\n    *         each entry in each sub-array represents adjacency for column;\n    *         if A[i][j] = 1, there is an edge from i to j.\n    ",
                  "range": [
                    4072,
                    4298
                  ],
                  "loc": {
                    "start": {
                      "line": 150,
                      "column": 3
                    },
                    "end": {
                      "line": 154,
                      "column": 6
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} given Vertex A, return all values from vertices connected to A by edges.\n    ",
                  "range": [
                    5054,
                    5159
                  ],
                  "loc": {
                    "start": {
                      "line": 177,
                      "column": 3
                    },
                    "end": {
                      "line": 179,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getEdgesByVertex",
                "range": [
                  5163,
                  5179
                ],
                "loc": {
                  "start": {
                    "line": 180,
                    "column": 3
                  },
                  "end": {
                    "line": 180,
                    "column": 19
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [
                  {
                    "type": "Identifier",
                    "name": "vertex",
                    "range": [
                      5180,
                      5186
                    ],
                    "loc": {
                      "start": {
                        "line": 180,
                        "column": 20
                      },
                      "end": {
                        "line": 180,
                        "column": 26
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "IfStatement",
                      "test": {
                        "type": "UnaryExpression",
                        "operator": "!",
                        "argument": {
                          "type": "BinaryExpression",
                          "operator": "instanceof",
                          "left": {
                            "type": "Identifier",
                            "name": "vertex",
                            "range": [
                              5200,
                              5206
                            ],
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 11
                              },
                              "end": {
                                "line": 181,
                                "column": 17
                              }
                            }
                          },
                          "right": {
                            "type": "Identifier",
                            "name": "Vertex",
                            "range": [
                              5218,
                              5224
                            ],
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 29
                              },
                              "end": {
                                "line": 181,
                                "column": 35
                              }
                            }
                          },
                          "range": [
                            5200,
                            5224
                          ],
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 11
                            },
                            "end": {
                              "line": 181,
                              "column": 35
                            }
                          }
                        },
                        "prefix": true,
                        "range": [
                          5198,
                          5225
                        ],
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 9
                          },
                          "end": {
                            "line": 181,
                            "column": 36
                          }
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "body": [
                          {
                            "type": "ExpressionStatement",
                            "expression": {
                              "type": "AssignmentExpression",
                              "operator": "=",
                              "left": {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  5235,
                                  5241
                                ],
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 13
                                  }
                                }
                              },
                              "right": {
                                "type": "CallExpression",
                                "callee": {
                                  "type": "MemberExpression",
                                  "computed": false,
                                  "object": {
                                    "type": "ThisExpression",
                                    "range": [
                                      5244,
                                      5248
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 20
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "name": "getVertexByValue",
                                    "range": [
                                      5249,
                                      5265
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 37
                                      }
                                    }
                                  },
                                  "range": [
                                    5244,
                                    5265
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 182,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 182,
                                      "column": 37
                                    }
                                  }
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "name": "vertex",
                                    "range": [
                                      5266,
                                      5272
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 44
                                      }
                                    }
                                  }
                                ],
                                "range": [
                                  5244,
                                  5273
                                ],
                                "loc": {
                                  "start": {
                                    "line": 182,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 182,
                                    "column": 45
                                  }
                                }
                              },
                              "range": [
                                5235,
                                5273
                              ],
                              "loc": {
                                "start": {
                                  "line": 182,
                                  "column": 7
                                },
                                "end": {
                                  "line": 182,
                                  "column": 45
                                }
                              }
                            },
                            "range": [
                              5235,
                              5274
                            ],
                            "loc": {
                              "start": {
                                "line": 182,
                                "column": 7
                              },
                              "end": {
                                "line": 182,
                                "column": 46
                              }
                            }
                          }
                        ],
                        "range": [
                          5226,
                          5281
                        ],
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 37
                          },
                          "end": {
                            "line": 183,
                            "column": 6
                          }
                        }
                      },
                      "alternate": null,
                      "range": [
                        5194,
                        5281
                      ],
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 5
                        },
                        "end": {
                          "line": 183,
                          "column": 6
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "edges",
                            "range": [
                              5292,
                              5297
                            ],
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 9
                              },
                              "end": {
                                "line": 185,
                                "column": 14
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  5300,
                                  5304
                                ],
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getEdges",
                                "range": [
                                  5305,
                                  5313
                                ],
                                "loc": {
                                  "start": {
                                    "line": 185,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 185,
                                    "column": 30
                                  }
                                }
                              },
                              "range": [
                                5300,
                                5313
                              ],
                              "loc": {
                                "start": {
                                  "line": 185,
                                  "column": 17
                                },
                                "end": {
                                  "line": 185,
                                  "column": 30
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              5300,
                              5315
                            ],
                            "loc": {
                              "start": {
                                "line": 185,
                                "column": 17
                              },
                              "end": {
                                "line": 185,
                                "column": 32
                              }
                            }
                          },
                          "range": [
                            5292,
                            5315
                          ],
                          "loc": {
                            "start": {
                              "line": 185,
                              "column": 9
                            },
                            "end": {
                              "line": 185,
                              "column": 32
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        5288,
                        5316
                      ],
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 5
                        },
                        "end": {
                          "line": 185,
                          "column": 33
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              5326,
                              5334
                            ],
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 9
                              },
                              "end": {
                                "line": 186,
                                "column": 17
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "Identifier",
                                "name": "edges",
                                "range": [
                                  5337,
                                  5342
                                ],
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 20
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "filter",
                                "range": [
                                  5343,
                                  5349
                                ],
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 186,
                                    "column": 32
                                  }
                                }
                              },
                              "range": [
                                5337,
                                5349
                              ],
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 20
                                },
                                "end": {
                                  "line": 186,
                                  "column": 32
                                }
                              }
                            },
                            "arguments": [
                              {
                                "type": "ArrowFunctionExpression",
                                "id": null,
                                "params": [
                                  {
                                    "type": "Identifier",
                                    "name": "edge",
                                    "range": [
                                      5351,
                                      5355
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 186,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 186,
                                        "column": 38
                                      }
                                    }
                                  }
                                ],
                                "body": {
                                  "type": "BlockStatement",
                                  "body": [
                                    {
                                      "type": "ReturnStatement",
                                      "argument": {
                                        "type": "BinaryExpression",
                                        "operator": "===",
                                        "left": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "MemberExpression",
                                            "computed": false,
                                            "object": {
                                              "type": "Identifier",
                                              "name": "edge",
                                              "range": [
                                                5376,
                                                5380
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 187,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 187,
                                                  "column": 18
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "name": "startVertex",
                                              "range": [
                                                5381,
                                                5392
                                              ],
                                              "loc": {
                                                "start": {
                                                  "line": 187,
                                                  "column": 19
                                                },
                                                "end": {
                                                  "line": 187,
                                                  "column": 30
                                                }
                                              }
                                            },
                                            "range": [
                                              5376,
                                              5392
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 30
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              5393,
                                              5398
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 36
                                              }
                                            }
                                          },
                                          "range": [
                                            5376,
                                            5398
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 36
                                            }
                                          }
                                        },
                                        "right": {
                                          "type": "MemberExpression",
                                          "computed": false,
                                          "object": {
                                            "type": "Identifier",
                                            "name": "vertex",
                                            "range": [
                                              5403,
                                              5409
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 47
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "name": "value",
                                            "range": [
                                              5410,
                                              5415
                                            ],
                                            "loc": {
                                              "start": {
                                                "line": 187,
                                                "column": 48
                                              },
                                              "end": {
                                                "line": 187,
                                                "column": 53
                                              }
                                            }
                                          },
                                          "range": [
                                            5403,
                                            5415
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 187,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 187,
                                              "column": 53
                                            }
                                          }
                                        },
                                        "range": [
                                          5376,
                                          5415
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 53
                                          }
                                        }
                                      },
                                      "range": [
                                        5369,
                                        5416
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 7
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 54
                                        }
                                      }
                                    }
                                  ],
                                  "range": [
                                    5360,
                                    5423
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 186,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 188,
                                      "column": 6
                                    }
                                  }
                                },
                                "generator": false,
                                "expression": false,
                                "range": [
                                  5350,
                                  5423
                                ],
                                "loc": {
                                  "start": {
                                    "line": 186,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 188,
                                    "column": 6
                                  }
                                }
                              }
                            ],
                            "range": [
                              5337,
                              5424
                            ],
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 20
                              },
                              "end": {
                                "line": 188,
                                "column": 7
                              }
                            }
                          },
                          "range": [
                            5326,
                            5424
                          ],
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 9
                            },
                            "end": {
                              "line": 188,
                              "column": 7
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        5322,
                        5425
                      ],
                      "loc": {
                        "start": {
                          "line": 186,
                          "column": 5
                        },
                        "end": {
                          "line": 188,
                          "column": 8
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "matching",
                            "range": [
                              5439,
                              5447
                            ],
                            "loc": {
                              "start": {
                                "line": 190,
                                "column": 12
                              },
                              "end": {
                                "line": 190,
                                "column": 20
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "map",
                            "range": [
                              5448,
                              5451
                            ],
                            "loc": {
                              "start": {
                                "line": 190,
                                "column": 21
                              },
                              "end": {
                                "line": 190,
                                "column": 24
                              }
                            }
                          },
                          "range": [
                            5439,
                            5451
                          ],
                          "loc": {
                            "start": {
                              "line": 190,
                              "column": 12
                            },
                            "end": {
                              "line": 190,
                              "column": 24
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "edge",
                                "range": [
                                  5454,
                                  5458
                                ],
                                "loc": {
                                  "start": {
                                    "line": 190,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 190,
                                    "column": 31
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ReturnStatement",
                                  "argument": {
                                    "type": "MemberExpression",
                                    "computed": false,
                                    "object": {
                                      "type": "MemberExpression",
                                      "computed": false,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "edge",
                                        "range": [
                                          5479,
                                          5483
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 18
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "name": "endVertex",
                                        "range": [
                                          5484,
                                          5493
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "range": [
                                        5479,
                                        5493
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 28
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "name": "value",
                                      "range": [
                                        5494,
                                        5499
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 34
                                        }
                                      }
                                    },
                                    "range": [
                                      5479,
                                      5499
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 14
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 34
                                      }
                                    }
                                  },
                                  "range": [
                                    5472,
                                    5500
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 35
                                    }
                                  }
                                }
                              ],
                              "range": [
                                5463,
                                5507
                              ],
                              "loc": {
                                "start": {
                                  "line": 190,
                                  "column": 36
                                },
                                "end": {
                                  "line": 192,
                                  "column": 6
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              5453,
                              5507
                            ],
                            "loc": {
                              "start": {
                                "line": 190,
                                "column": 26
                              },
                              "end": {
                                "line": 192,
                                "column": 6
                              }
                            }
                          }
                        ],
                        "range": [
                          5439,
                          5508
                        ],
                        "loc": {
                          "start": {
                            "line": 190,
                            "column": 12
                          },
                          "end": {
                            "line": 192,
                            "column": 7
                          }
                        }
                      },
                      "range": [
                        5432,
                        5509
                      ],
                      "loc": {
                        "start": {
                          "line": 190,
                          "column": 5
                        },
                        "end": {
                          "line": 192,
                          "column": 8
                        }
                      }
                    }
                  ],
                  "range": [
                    5187,
                    5514
                  ],
                  "loc": {
                    "start": {
                      "line": 180,
                      "column": 27
                    },
                    "end": {
                      "line": 193,
                      "column": 4
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  5179,
                  5514
                ],
                "loc": {
                  "start": {
                    "line": 180,
                    "column": 19
                  },
                  "end": {
                    "line": 193,
                    "column": 4
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                5163,
                5514
              ],
              "loc": {
                "start": {
                  "line": 180,
                  "column": 3
                },
                "end": {
                  "line": 193,
                  "column": 4
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Array} given Vertex A, return all values from vertices connected to A by edges.\n    ",
                  "range": [
                    5054,
                    5159
                  ],
                  "loc": {
                    "start": {
                      "line": 177,
                      "column": 3
                    },
                    "end": {
                      "line": 179,
                      "column": 6
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Object} each Object key represents a vertex in graph;\n    * value at each key is an array of vertex values found in edge destinations.\n    ",
                  "range": [
                    5519,
                    5679
                  ],
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 3
                    },
                    "end": {
                      "line": 198,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            },
            {
              "type": "MethodDefinition",
              "key": {
                "type": "Identifier",
                "name": "getAdjacencyList",
                "range": [
                  5684,
                  5700
                ],
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 4
                  },
                  "end": {
                    "line": 199,
                    "column": 20
                  }
                }
              },
              "value": {
                "type": "FunctionExpression",
                "id": null,
                "params": [],
                "body": {
                  "type": "BlockStatement",
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "list",
                            "range": [
                              5714,
                              5718
                            ],
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 10
                              },
                              "end": {
                                "line": 200,
                                "column": 14
                              }
                            }
                          },
                          "init": {
                            "type": "ObjectExpression",
                            "properties": [],
                            "range": [
                              5721,
                              5723
                            ],
                            "loc": {
                              "start": {
                                "line": 200,
                                "column": 17
                              },
                              "end": {
                                "line": 200,
                                "column": 19
                              }
                            }
                          },
                          "range": [
                            5714,
                            5723
                          ],
                          "loc": {
                            "start": {
                              "line": 200,
                              "column": 10
                            },
                            "end": {
                              "line": 200,
                              "column": 19
                            }
                          }
                        }
                      ],
                      "kind": "var",
                      "range": [
                        5710,
                        5724
                      ],
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 6
                        },
                        "end": {
                          "line": 200,
                          "column": 20
                        }
                      }
                    },
                    {
                      "type": "VariableDeclaration",
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "id": {
                            "type": "Identifier",
                            "name": "vertices",
                            "range": [
                              5735,
                              5743
                            ],
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 10
                              },
                              "end": {
                                "line": 201,
                                "column": 18
                              }
                            }
                          },
                          "init": {
                            "type": "CallExpression",
                            "callee": {
                              "type": "MemberExpression",
                              "computed": false,
                              "object": {
                                "type": "ThisExpression",
                                "range": [
                                  5746,
                                  5750
                                ],
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 21
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 25
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "name": "getVertices",
                                "range": [
                                  5751,
                                  5762
                                ],
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 37
                                  }
                                }
                              },
                              "range": [
                                5746,
                                5762
                              ],
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 21
                                },
                                "end": {
                                  "line": 201,
                                  "column": 37
                                }
                              }
                            },
                            "arguments": [],
                            "range": [
                              5746,
                              5764
                            ],
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 21
                              },
                              "end": {
                                "line": 201,
                                "column": 39
                              }
                            }
                          },
                          "range": [
                            5735,
                            5764
                          ],
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 10
                            },
                            "end": {
                              "line": 201,
                              "column": 39
                            }
                          }
                        }
                      ],
                      "kind": "let",
                      "range": [
                        5731,
                        5765
                      ],
                      "loc": {
                        "start": {
                          "line": 201,
                          "column": 6
                        },
                        "end": {
                          "line": 201,
                          "column": 40
                        }
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "expression": {
                        "type": "CallExpression",
                        "callee": {
                          "type": "MemberExpression",
                          "computed": false,
                          "object": {
                            "type": "Identifier",
                            "name": "vertices",
                            "range": [
                              5772,
                              5780
                            ],
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 6
                              },
                              "end": {
                                "line": 202,
                                "column": 14
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "name": "forEach",
                            "range": [
                              5781,
                              5788
                            ],
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 15
                              },
                              "end": {
                                "line": 202,
                                "column": 22
                              }
                            }
                          },
                          "range": [
                            5772,
                            5788
                          ],
                          "loc": {
                            "start": {
                              "line": 202,
                              "column": 6
                            },
                            "end": {
                              "line": 202,
                              "column": 22
                            }
                          }
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "id": null,
                            "params": [
                              {
                                "type": "Identifier",
                                "name": "vertex",
                                "range": [
                                  5790,
                                  5796
                                ],
                                "loc": {
                                  "start": {
                                    "line": 202,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 202,
                                    "column": 30
                                  }
                                }
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "computed": true,
                                      "object": {
                                        "type": "Identifier",
                                        "name": "list",
                                        "range": [
                                          5811,
                                          5815
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "Identifier",
                                          "name": "vertex",
                                          "range": [
                                            5816,
                                            5822
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "value",
                                          "range": [
                                            5823,
                                            5828
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 25
                                            }
                                          }
                                        },
                                        "range": [
                                          5816,
                                          5828
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 25
                                          }
                                        }
                                      },
                                      "range": [
                                        5811,
                                        5829
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 26
                                        }
                                      }
                                    },
                                    "right": {
                                      "type": "CallExpression",
                                      "callee": {
                                        "type": "MemberExpression",
                                        "computed": false,
                                        "object": {
                                          "type": "ThisExpression",
                                          "range": [
                                            5832,
                                            5836
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "name": "getEdgesByVertex",
                                          "range": [
                                            5837,
                                            5853
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 50
                                            }
                                          }
                                        },
                                        "range": [
                                          5832,
                                          5853
                                        ],
                                        "loc": {
                                          "start": {
                                            "line": 203,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 203,
                                            "column": 50
                                          }
                                        }
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "name": "vertex",
                                          "range": [
                                            5854,
                                            5860
                                          ],
                                          "loc": {
                                            "start": {
                                              "line": 203,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 203,
                                              "column": 57
                                            }
                                          }
                                        }
                                      ],
                                      "range": [
                                        5832,
                                        5861
                                      ],
                                      "loc": {
                                        "start": {
                                          "line": 203,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 203,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "range": [
                                      5811,
                                      5861
                                    ],
                                    "loc": {
                                      "start": {
                                        "line": 203,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 203,
                                        "column": 58
                                      }
                                    }
                                  },
                                  "range": [
                                    5811,
                                    5862
                                  ],
                                  "loc": {
                                    "start": {
                                      "line": 203,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 203,
                                      "column": 59
                                    }
                                  }
                                }
                              ],
                              "range": [
                                5801,
                                5870
                              ],
                              "loc": {
                                "start": {
                                  "line": 202,
                                  "column": 35
                                },
                                "end": {
                                  "line": 204,
                                  "column": 7
                                }
                              }
                            },
                            "generator": false,
                            "expression": false,
                            "range": [
                              5789,
                              5870
                            ],
                            "loc": {
                              "start": {
                                "line": 202,
                                "column": 23
                              },
                              "end": {
                                "line": 204,
                                "column": 7
                              }
                            }
                          }
                        ],
                        "range": [
                          5772,
                          5871
                        ],
                        "loc": {
                          "start": {
                            "line": 202,
                            "column": 6
                          },
                          "end": {
                            "line": 204,
                            "column": 8
                          }
                        }
                      },
                      "range": [
                        5772,
                        5872
                      ],
                      "loc": {
                        "start": {
                          "line": 202,
                          "column": 6
                        },
                        "end": {
                          "line": 204,
                          "column": 9
                        }
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "argument": {
                        "type": "Identifier",
                        "name": "list",
                        "range": [
                          5886,
                          5890
                        ],
                        "loc": {
                          "start": {
                            "line": 205,
                            "column": 13
                          },
                          "end": {
                            "line": 205,
                            "column": 17
                          }
                        }
                      },
                      "range": [
                        5879,
                        5891
                      ],
                      "loc": {
                        "start": {
                          "line": 205,
                          "column": 6
                        },
                        "end": {
                          "line": 205,
                          "column": 18
                        }
                      }
                    }
                  ],
                  "range": [
                    5702,
                    5897
                  ],
                  "loc": {
                    "start": {
                      "line": 199,
                      "column": 22
                    },
                    "end": {
                      "line": 206,
                      "column": 5
                    }
                  }
                },
                "generator": false,
                "expression": false,
                "range": [
                  5700,
                  5897
                ],
                "loc": {
                  "start": {
                    "line": 199,
                    "column": 20
                  },
                  "end": {
                    "line": 206,
                    "column": 5
                  }
                }
              },
              "kind": "method",
              "computed": false,
              "range": [
                5684,
                5897
              ],
              "loc": {
                "start": {
                  "line": 199,
                  "column": 4
                },
                "end": {
                  "line": 206,
                  "column": 5
                }
              },
              "leadingComments": [
                {
                  "type": "Block",
                  "value": "*\n    * @return {Object} each Object key represents a vertex in graph;\n    * value at each key is an array of vertex values found in edge destinations.\n    ",
                  "range": [
                    5519,
                    5679
                  ],
                  "loc": {
                    "start": {
                      "line": 195,
                      "column": 3
                    },
                    "end": {
                      "line": 198,
                      "column": 6
                    }
                  }
                }
              ],
              "static": false
            }
          ],
          "range": [
            382,
            5899
          ],
          "loc": {
            "start": {
              "line": 13,
              "column": 12
            },
            "end": {
              "line": 207,
              "column": 1
            }
          }
        },
        "range": [
          370,
          5899
        ],
        "loc": {
          "start": {
            "line": 13,
            "column": 0
          },
          "end": {
            "line": 207,
            "column": 1
          }
        },
        "leadingComments": [
          {
            "type": "Block",
            "value": "*\n * Graph: represents a undirected graph data structure.\n * Usage: let graph = new Graph();\n *        graph.addVertex('A');\n *        graph.addVertex('B');\n *        graph.addEdge('A','B');\n ",
            "range": [
              173,
              369
            ],
            "loc": {
              "start": {
                "line": 6,
                "column": 0
              },
              "end": {
                "line": 12,
                "column": 3
              }
            }
          }
        ],
        "__esdoc__pseudo_export": false,
        "trailingComments": []
      },
      "range": [
        5901,
        5922
      ],
      "loc": {
        "start": {
          "line": 209,
          "column": 0
        },
        "end": {
          "line": 209,
          "column": 21
        }
      },
      "leadingComments": null
    }
  ],
  "sourceType": "module",
  "range": [
    0,
    5922
  ],
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 209,
      "column": 21
    }
  },
  "comments": [
    {
      "type": "Block",
      "value": "*\n * Graph: represents a undirected graph data structure.\n * Usage: let graph = new Graph();\n *        graph.addVertex('A');\n *        graph.addVertex('B');\n *        graph.addEdge('A','B');\n ",
      "range": [
        173,
        369
      ],
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 12,
          "column": 3
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @return {Array} array of all Vertex instances in this graph.\n   ",
      "range": [
        455,
        530
      ],
      "loc": {
        "start": {
          "line": 19,
          "column": 2
        },
        "end": {
          "line": 21,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @param {value} value to find in the graph.\n   * @return {Boolean} true if any vertex has this value else false\n   ",
      "range": [
        582,
        707
      ],
      "loc": {
        "start": {
          "line": 26,
          "column": 2
        },
        "end": {
          "line": 29,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @return {Array} array of values in all graph vertices.\n   ",
      "range": [
        834,
        903
      ],
      "loc": {
        "start": {
          "line": 35,
          "column": 2
        },
        "end": {
          "line": 37,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @param {value} value to set on the vertex\n   * @throws {DuplicateVertexError} when adding vertex whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
      "range": [
        1016,
        1204
      ],
      "loc": {
        "start": {
          "line": 44,
          "column": 2
        },
        "end": {
          "line": 48,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @param {values} array of values to add to the graph\n   * @return {Graph} current instance of graph.\n   ",
      "range": [
        1514,
        1628
      ],
      "loc": {
        "start": {
          "line": 59,
          "column": 2
        },
        "end": {
          "line": 62,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @param {value} value\n   * @return {Vertex} instance of Vertex in graph with value, else undefined\n   ",
      "range": [
        1746,
        1858
      ],
      "loc": {
        "start": {
          "line": 70,
          "column": 2
        },
        "end": {
          "line": 73,
          "column": 5
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n   * @param {startVertex} Vertex (or value of Vertex) in graph to start\n   * @param {endVertex} Vertex (or value of Vertex) in graph to end\n   * @throws {DuplicateEdgeError} when adding edge whose value exists in graph.\n   * @return {Graph} current instance of graph.\n   ",
      "range": [
        2112,
        2389
      ],
      "loc": {
        "start": {
          "line": 87,
          "column": 2
        },
        "end": {
          "line": 92,
          "column": 5
        }
      }
    },
    {
      "type": "Line",
      "value": " since this undirected graph, edges must go both ways",
      "range": [
        2933,
        2988
      ],
      "loc": {
        "start": {
          "line": 109,
          "column": 5
        },
        "end": {
          "line": 109,
          "column": 60
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @return {Array} array of Edge instances present in Graph.\n    ",
      "range": [
        3110,
        3184
      ],
      "loc": {
        "start": {
          "line": 116,
          "column": 3
        },
        "end": {
          "line": 118,
          "column": 6
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @param {startValue} start value of edge to locate\n    * @param {endValue} end value of edge to locate\n    * @return {Edge} returns Edge instance in Graph if exists, otherwise returns undefined\n    ",
      "range": [
        3234,
        3443
      ],
      "loc": {
        "start": {
          "line": 123,
          "column": 3
        },
        "end": {
          "line": 127,
          "column": 6
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @param {startVertex} start value of edge to locate\n    * @param {endVertex} end value of edge to locate\n    * @return {Boolean} true if any edge has these start and end values else false\n    ",
      "range": [
        3763,
        3966
      ],
      "loc": {
        "start": {
          "line": 141,
          "column": 3
        },
        "end": {
          "line": 145,
          "column": 6
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @return {Array} array of arrays; each entry represents adjacency for row;\n    *         each entry in each sub-array represents adjacency for column;\n    *         if A[i][j] = 1, there is an edge from i to j.\n    ",
      "range": [
        4072,
        4298
      ],
      "loc": {
        "start": {
          "line": 150,
          "column": 3
        },
        "end": {
          "line": 154,
          "column": 6
        }
      }
    },
    {
      "type": "Line",
      "value": " where N = number of vertices, initialize N X N zero matrix",
      "range": [
        4391,
        4452
      ],
      "loc": {
        "start": {
          "line": 158,
          "column": 5
        },
        "end": {
          "line": 158,
          "column": 66
        }
      }
    },
    {
      "type": "Line",
      "value": " if edge exists for A[i][j] (and A[j][i]) set cell to 1",
      "range": [
        4559,
        4616
      ],
      "loc": {
        "start": {
          "line": 163,
          "column": 5
        },
        "end": {
          "line": 163,
          "column": 62
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @return {Array} given Vertex A, return all values from vertices connected to A by edges.\n    ",
      "range": [
        5054,
        5159
      ],
      "loc": {
        "start": {
          "line": 177,
          "column": 3
        },
        "end": {
          "line": 179,
          "column": 6
        }
      }
    },
    {
      "type": "Block",
      "value": "*\n    * @return {Object} each Object key represents a vertex in graph;\n    * value at each key is an array of vertex values found in edge destinations.\n    ",
      "range": [
        5519,
        5679
      ],
      "loc": {
        "start": {
          "line": 195,
          "column": 3
        },
        "end": {
          "line": 198,
          "column": 6
        }
      }
    }
  ]
}