{
  "type": "File",
  "start": 0,
  "end": 4359,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 124,
      "column": 0
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 4359,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 124,
        "column": 0
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "ImportDeclaration",
        "start": 0,
        "end": 35,
        "loc": {
          "start": {
            "line": 1,
            "column": 0
          },
          "end": {
            "line": 1,
            "column": 35
          }
        },
        "specifiers": [
          {
            "type": "ImportSpecifier",
            "start": 9,
            "end": 18,
            "loc": {
              "start": {
                "line": 1,
                "column": 9
              },
              "end": {
                "line": 1,
                "column": 18
              }
            },
            "imported": {
              "type": "Identifier",
              "start": 9,
              "end": 18,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 9
                },
                "end": {
                  "line": 1,
                  "column": 18
                },
                "identifierName": "cloneDeep"
              },
              "name": "cloneDeep"
            },
            "local": {
              "type": "Identifier",
              "start": 9,
              "end": 18,
              "loc": {
                "start": {
                  "line": 1,
                  "column": 9
                },
                "end": {
                  "line": 1,
                  "column": 18
                },
                "identifierName": "cloneDeep"
              },
              "name": "cloneDeep"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 26,
          "end": 34,
          "loc": {
            "start": {
              "line": 1,
              "column": 26
            },
            "end": {
              "line": 1,
              "column": 34
            }
          },
          "extra": {
            "rawValue": "lodash",
            "raw": "\"lodash\""
          },
          "value": "lodash"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 36,
        "end": 75,
        "loc": {
          "start": {
            "line": 2,
            "column": 0
          },
          "end": {
            "line": 2,
            "column": 39
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 43,
            "end": 50,
            "loc": {
              "start": {
                "line": 2,
                "column": 7
              },
              "end": {
                "line": 2,
                "column": 14
              }
            },
            "local": {
              "type": "Identifier",
              "start": 43,
              "end": 50,
              "loc": {
                "start": {
                  "line": 2,
                  "column": 7
                },
                "end": {
                  "line": 2,
                  "column": 14
                },
                "identifierName": "Project"
              },
              "name": "Project"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 56,
          "end": 74,
          "loc": {
            "start": {
              "line": 2,
              "column": 20
            },
            "end": {
              "line": 2,
              "column": 38
            }
          },
          "extra": {
            "rawValue": "./domain/Project",
            "raw": "\"./domain/Project\""
          },
          "value": "./domain/Project"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 76,
        "end": 131,
        "loc": {
          "start": {
            "line": 3,
            "column": 0
          },
          "end": {
            "line": 3,
            "column": 55
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 83,
            "end": 93,
            "loc": {
              "start": {
                "line": 3,
                "column": 7
              },
              "end": {
                "line": 3,
                "column": 17
              }
            },
            "local": {
              "type": "Identifier",
              "start": 83,
              "end": 93,
              "loc": {
                "start": {
                  "line": 3,
                  "column": 7
                },
                "end": {
                  "line": 3,
                  "column": 17
                },
                "identifierName": "BidFactory"
              },
              "name": "BidFactory"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 99,
          "end": 130,
          "loc": {
            "start": {
              "line": 3,
              "column": 23
            },
            "end": {
              "line": 3,
              "column": 54
            }
          },
          "extra": {
            "rawValue": "./domain/factories/BidFactory",
            "raw": "\"./domain/factories/BidFactory\""
          },
          "value": "./domain/factories/BidFactory"
        }
      },
      {
        "type": "ImportDeclaration",
        "start": 132,
        "end": 194,
        "loc": {
          "start": {
            "line": 4,
            "column": 0
          },
          "end": {
            "line": 4,
            "column": 62
          }
        },
        "specifiers": [
          {
            "type": "ImportDefaultSpecifier",
            "start": 139,
            "end": 153,
            "loc": {
              "start": {
                "line": 4,
                "column": 7
              },
              "end": {
                "line": 4,
                "column": 21
              }
            },
            "local": {
              "type": "Identifier",
              "start": 139,
              "end": 153,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 7
                },
                "end": {
                  "line": 4,
                  "column": 21
                },
                "identifierName": "ProjectService"
              },
              "name": "ProjectService"
            }
          }
        ],
        "source": {
          "type": "StringLiteral",
          "start": 159,
          "end": 193,
          "loc": {
            "start": {
              "line": 4,
              "column": 27
            },
            "end": {
              "line": 4,
              "column": 61
            }
          },
          "extra": {
            "rawValue": "./domain/services/ProjectService",
            "raw": "\"./domain/services/ProjectService\""
          },
          "value": "./domain/services/ProjectService"
        },
        "trailingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * This class serves to quickly load a {@link Project} instance with included {@link Bid}s\n *\n * @class ProjectLoader\n ",
            "start": 196,
            "end": 321,
            "loc": {
              "start": {
                "line": 6,
                "column": 0
              },
              "end": {
                "line": 10,
                "column": 3
              }
            }
          }
        ]
      },
      {
        "type": "ExportDefaultDeclaration",
        "start": 322,
        "end": 4358,
        "loc": {
          "start": {
            "line": 11,
            "column": 0
          },
          "end": {
            "line": 123,
            "column": 1
          }
        },
        "declaration": {
          "type": "ClassDeclaration",
          "start": 337,
          "end": 4358,
          "loc": {
            "start": {
              "line": 11,
              "column": 15
            },
            "end": {
              "line": 123,
              "column": 1
            }
          },
          "id": {
            "type": "Identifier",
            "start": 343,
            "end": 356,
            "loc": {
              "start": {
                "line": 11,
                "column": 21
              },
              "end": {
                "line": 11,
                "column": 34
              },
              "identifierName": "ProjectLoader"
            },
            "name": "ProjectLoader",
            "leadingComments": null
          },
          "superClass": null,
          "body": {
            "type": "ClassBody",
            "start": 357,
            "end": 4358,
            "loc": {
              "start": {
                "line": 11,
                "column": 35
              },
              "end": {
                "line": 123,
                "column": 1
              }
            },
            "body": [
              {
                "type": "ClassMethod",
                "start": 456,
                "end": 520,
                "loc": {
                  "start": {
                    "line": 16,
                    "column": 2
                  },
                  "end": {
                    "line": 18,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 456,
                  "end": 467,
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 2
                    },
                    "end": {
                      "line": 16,
                      "column": 13
                    },
                    "identifierName": "constructor"
                  },
                  "name": "constructor",
                  "leadingComments": null
                },
                "kind": "constructor",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 468,
                    "end": 480,
                    "loc": {
                      "start": {
                        "line": 16,
                        "column": 14
                      },
                      "end": {
                        "line": 16,
                        "column": 26
                      },
                      "identifierName": "pvbidContext"
                    },
                    "name": "pvbidContext"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 482,
                  "end": 520,
                  "loc": {
                    "start": {
                      "line": 16,
                      "column": 28
                    },
                    "end": {
                      "line": 18,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "ExpressionStatement",
                      "start": 488,
                      "end": 516,
                      "loc": {
                        "start": {
                          "line": 17,
                          "column": 4
                        },
                        "end": {
                          "line": 17,
                          "column": 32
                        }
                      },
                      "expression": {
                        "type": "AssignmentExpression",
                        "start": 488,
                        "end": 515,
                        "loc": {
                          "start": {
                            "line": 17,
                            "column": 4
                          },
                          "end": {
                            "line": 17,
                            "column": 31
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 488,
                          "end": 500,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 4
                            },
                            "end": {
                              "line": 17,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 488,
                            "end": 492,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 4
                              },
                              "end": {
                                "line": 17,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 493,
                            "end": 500,
                            "loc": {
                              "start": {
                                "line": 17,
                                "column": 9
                              },
                              "end": {
                                "line": 17,
                                "column": 16
                              },
                              "identifierName": "context"
                            },
                            "name": "context"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "Identifier",
                          "start": 503,
                          "end": 515,
                          "loc": {
                            "start": {
                              "line": 17,
                              "column": 19
                            },
                            "end": {
                              "line": 17,
                              "column": 31
                            },
                            "identifierName": "pvbidContext"
                          },
                          "name": "pvbidContext"
                        }
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Creates an instance of ProjectLoader.\n   * @param {PVBidContext} pvbidContext\n   ",
                    "start": 361,
                    "end": 453,
                    "loc": {
                      "start": {
                        "line": 12,
                        "column": 2
                      },
                      "end": {
                        "line": 15,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Loads a project and bid instances.\n   *\n   * @param {number} projectId The id of the project to be loaded\n   * @param {object} options Loading options\n   * @param {boolean} [options.loadBidEntities=true] Determines if the bids should be loaded with their entities. They can be loaded later with bid.load() if\n   * @returns {Promise<Project>}\n   ",
                    "start": 524,
                    "end": 880,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 2
                      },
                      "end": {
                        "line": 27,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 883,
                "end": 2168,
                "loc": {
                  "start": {
                    "line": 28,
                    "column": 2
                  },
                  "end": {
                    "line": 59,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 889,
                  "end": 893,
                  "loc": {
                    "start": {
                      "line": 28,
                      "column": 8
                    },
                    "end": {
                      "line": 28,
                      "column": 12
                    },
                    "identifierName": "load"
                  },
                  "name": "load"
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": true,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 894,
                    "end": 903,
                    "loc": {
                      "start": {
                        "line": 28,
                        "column": 13
                      },
                      "end": {
                        "line": 28,
                        "column": 22
                      },
                      "identifierName": "projectId"
                    },
                    "name": "projectId"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 905,
                    "end": 936,
                    "loc": {
                      "start": {
                        "line": 28,
                        "column": 24
                      },
                      "end": {
                        "line": 28,
                        "column": 55
                      }
                    },
                    "left": {
                      "type": "ObjectPattern",
                      "start": 905,
                      "end": 931,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 24
                        },
                        "end": {
                          "line": 28,
                          "column": 50
                        }
                      },
                      "properties": [
                        {
                          "type": "ObjectProperty",
                          "start": 907,
                          "end": 929,
                          "loc": {
                            "start": {
                              "line": 28,
                              "column": 26
                            },
                            "end": {
                              "line": 28,
                              "column": 48
                            }
                          },
                          "method": false,
                          "shorthand": true,
                          "computed": false,
                          "key": {
                            "type": "Identifier",
                            "start": 907,
                            "end": 922,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 26
                              },
                              "end": {
                                "line": 28,
                                "column": 41
                              },
                              "identifierName": "loadBidEntities"
                            },
                            "name": "loadBidEntities"
                          },
                          "value": {
                            "type": "AssignmentPattern",
                            "start": 907,
                            "end": 929,
                            "loc": {
                              "start": {
                                "line": 28,
                                "column": 26
                              },
                              "end": {
                                "line": 28,
                                "column": 48
                              }
                            },
                            "left": {
                              "type": "Identifier",
                              "start": 907,
                              "end": 922,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 26
                                },
                                "end": {
                                  "line": 28,
                                  "column": 41
                                },
                                "identifierName": "loadBidEntities"
                              },
                              "name": "loadBidEntities"
                            },
                            "right": {
                              "type": "BooleanLiteral",
                              "start": 925,
                              "end": 929,
                              "loc": {
                                "start": {
                                  "line": 28,
                                  "column": 44
                                },
                                "end": {
                                  "line": 28,
                                  "column": 48
                                }
                              },
                              "value": true
                            }
                          },
                          "extra": {
                            "shorthand": true
                          }
                        }
                      ]
                    },
                    "right": {
                      "type": "ObjectExpression",
                      "start": 934,
                      "end": 936,
                      "loc": {
                        "start": {
                          "line": 28,
                          "column": 53
                        },
                        "end": {
                          "line": 28,
                          "column": 55
                        }
                      },
                      "properties": []
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 938,
                  "end": 2168,
                  "loc": {
                    "start": {
                      "line": 28,
                      "column": 57
                    },
                    "end": {
                      "line": 59,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "TryStatement",
                      "start": 944,
                      "end": 2164,
                      "loc": {
                        "start": {
                          "line": 29,
                          "column": 4
                        },
                        "end": {
                          "line": 58,
                          "column": 5
                        }
                      },
                      "block": {
                        "type": "BlockStatement",
                        "start": 948,
                        "end": 2106,
                        "loc": {
                          "start": {
                            "line": 29,
                            "column": 8
                          },
                          "end": {
                            "line": 56,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 983,
                            "end": 1064,
                            "loc": {
                              "start": {
                                "line": 31,
                                "column": 6
                              },
                              "end": {
                                "line": 31,
                                "column": 87
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 989,
                                "end": 1063,
                                "loc": {
                                  "start": {
                                    "line": 31,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 31,
                                    "column": 86
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 989,
                                  "end": 1000,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 23
                                    },
                                    "identifierName": "projectData"
                                  },
                                  "name": "projectData",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "AwaitExpression",
                                  "start": 1003,
                                  "end": 1063,
                                  "loc": {
                                    "start": {
                                      "line": 31,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 31,
                                      "column": 86
                                    }
                                  },
                                  "argument": {
                                    "type": "CallExpression",
                                    "start": 1009,
                                    "end": 1063,
                                    "loc": {
                                      "start": {
                                        "line": 31,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 31,
                                        "column": 86
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 1009,
                                      "end": 1052,
                                      "loc": {
                                        "start": {
                                          "line": 31,
                                          "column": 32
                                        },
                                        "end": {
                                          "line": 31,
                                          "column": 75
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 1009,
                                        "end": 1043,
                                        "loc": {
                                          "start": {
                                            "line": 31,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 31,
                                            "column": 66
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 1009,
                                          "end": 1034,
                                          "loc": {
                                            "start": {
                                              "line": 31,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 31,
                                              "column": 57
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 1009,
                                            "end": 1021,
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 1009,
                                              "end": 1013,
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 36
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1014,
                                              "end": 1021,
                                              "loc": {
                                                "start": {
                                                  "line": 31,
                                                  "column": 37
                                                },
                                                "end": {
                                                  "line": 31,
                                                  "column": 44
                                                },
                                                "identifierName": "context"
                                              },
                                              "name": "context"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1022,
                                            "end": 1034,
                                            "loc": {
                                              "start": {
                                                "line": 31,
                                                "column": 45
                                              },
                                              "end": {
                                                "line": 31,
                                                "column": 57
                                              },
                                              "identifierName": "repositories"
                                            },
                                            "name": "repositories"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1035,
                                          "end": 1043,
                                          "loc": {
                                            "start": {
                                              "line": 31,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 31,
                                              "column": 66
                                            },
                                            "identifierName": "projects"
                                          },
                                          "name": "projects"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1044,
                                        "end": 1052,
                                        "loc": {
                                          "start": {
                                            "line": 31,
                                            "column": 67
                                          },
                                          "end": {
                                            "line": 31,
                                            "column": 75
                                          },
                                          "identifierName": "findById"
                                        },
                                        "name": "findById"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 1053,
                                        "end": 1062,
                                        "loc": {
                                          "start": {
                                            "line": 31,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 31,
                                            "column": 85
                                          },
                                          "identifierName": "projectId"
                                        },
                                        "name": "projectId"
                                      }
                                    ]
                                  }
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "const",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " load project data",
                                "start": 956,
                                "end": 976,
                                "loc": {
                                  "start": {
                                    "line": 30,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 30,
                                    "column": 26
                                  }
                                }
                              }
                            ],
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " instantiate project and bids",
                                "start": 1072,
                                "end": 1103,
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 37
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "VariableDeclaration",
                            "start": 1110,
                            "end": 1185,
                            "loc": {
                              "start": {
                                "line": 34,
                                "column": 6
                              },
                              "end": {
                                "line": 34,
                                "column": 81
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 1116,
                                "end": 1184,
                                "loc": {
                                  "start": {
                                    "line": 34,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 34,
                                    "column": 80
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 1116,
                                  "end": 1123,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 19
                                    },
                                    "identifierName": "project"
                                  },
                                  "name": "project",
                                  "leadingComments": null
                                },
                                "init": {
                                  "type": "NewExpression",
                                  "start": 1126,
                                  "end": 1184,
                                  "loc": {
                                    "start": {
                                      "line": 34,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 34,
                                      "column": 80
                                    }
                                  },
                                  "callee": {
                                    "type": "Identifier",
                                    "start": 1130,
                                    "end": 1137,
                                    "loc": {
                                      "start": {
                                        "line": 34,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 34,
                                        "column": 33
                                      },
                                      "identifierName": "Project"
                                    },
                                    "name": "Project"
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 1138,
                                      "end": 1149,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 45
                                        },
                                        "identifierName": "projectData"
                                      },
                                      "name": "projectData"
                                    },
                                    {
                                      "type": "NewExpression",
                                      "start": 1151,
                                      "end": 1183,
                                      "loc": {
                                        "start": {
                                          "line": 34,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 34,
                                          "column": 79
                                        }
                                      },
                                      "callee": {
                                        "type": "Identifier",
                                        "start": 1155,
                                        "end": 1169,
                                        "loc": {
                                          "start": {
                                            "line": 34,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 34,
                                            "column": 65
                                          },
                                          "identifierName": "ProjectService"
                                        },
                                        "name": "ProjectService"
                                      },
                                      "arguments": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 1170,
                                          "end": 1182,
                                          "loc": {
                                            "start": {
                                              "line": 34,
                                              "column": 66
                                            },
                                            "end": {
                                              "line": 34,
                                              "column": 78
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 1170,
                                            "end": 1174,
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 66
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 70
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1175,
                                            "end": 1182,
                                            "loc": {
                                              "start": {
                                                "line": 34,
                                                "column": 71
                                              },
                                              "end": {
                                                "line": 34,
                                                "column": 78
                                              },
                                              "identifierName": "context"
                                            },
                                            "name": "context"
                                          },
                                          "computed": false
                                        }
                                      ]
                                    }
                                  ]
                                },
                                "leadingComments": null
                              }
                            ],
                            "kind": "const",
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " instantiate project and bids",
                                "start": 1072,
                                "end": 1103,
                                "loc": {
                                  "start": {
                                    "line": 33,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 33,
                                    "column": 37
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 1192,
                            "end": 1348,
                            "loc": {
                              "start": {
                                "line": 35,
                                "column": 6
                              },
                              "end": {
                                "line": 38,
                                "column": 9
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 1192,
                              "end": 1347,
                              "loc": {
                                "start": {
                                  "line": 35,
                                  "column": 6
                                },
                                "end": {
                                  "line": 38,
                                  "column": 8
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 1192,
                                "end": 1216,
                                "loc": {
                                  "start": {
                                    "line": 35,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 35,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1192,
                                  "end": 1208,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 22
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 1192,
                                    "end": 1203,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 17
                                      },
                                      "identifierName": "projectData"
                                    },
                                    "name": "projectData"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1204,
                                    "end": 1208,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 35,
                                        "column": 22
                                      },
                                      "identifierName": "bids"
                                    },
                                    "name": "bids"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1209,
                                  "end": 1216,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 35,
                                      "column": 30
                                    },
                                    "identifierName": "forEach"
                                  },
                                  "name": "forEach"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 1217,
                                  "end": 1346,
                                  "loc": {
                                    "start": {
                                      "line": 35,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 38,
                                      "column": 7
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": false,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 1217,
                                      "end": 1224,
                                      "loc": {
                                        "start": {
                                          "line": 35,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 35,
                                          "column": 38
                                        },
                                        "identifierName": "bidData"
                                      },
                                      "name": "bidData"
                                    }
                                  ],
                                  "body": {
                                    "type": "BlockStatement",
                                    "start": 1228,
                                    "end": 1346,
                                    "loc": {
                                      "start": {
                                        "line": 35,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 38,
                                        "column": 7
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 1238,
                                        "end": 1306,
                                        "loc": {
                                          "start": {
                                            "line": 36,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 36,
                                            "column": 76
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 1244,
                                            "end": 1305,
                                            "loc": {
                                              "start": {
                                                "line": 36,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 36,
                                                "column": 75
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 1244,
                                              "end": 1247,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 17
                                                },
                                                "identifierName": "bid"
                                              },
                                              "name": "bid"
                                            },
                                            "init": {
                                              "type": "CallExpression",
                                              "start": 1250,
                                              "end": 1305,
                                              "loc": {
                                                "start": {
                                                  "line": 36,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 36,
                                                  "column": 75
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 1250,
                                                "end": 1273,
                                                "loc": {
                                                  "start": {
                                                    "line": 36,
                                                    "column": 20
                                                  },
                                                  "end": {
                                                    "line": 36,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "NewExpression",
                                                  "start": 1250,
                                                  "end": 1266,
                                                  "loc": {
                                                    "start": {
                                                      "line": 36,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 36,
                                                      "column": 36
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "Identifier",
                                                    "start": 1254,
                                                    "end": 1264,
                                                    "loc": {
                                                      "start": {
                                                        "line": 36,
                                                        "column": 24
                                                      },
                                                      "end": {
                                                        "line": 36,
                                                        "column": 34
                                                      },
                                                      "identifierName": "BidFactory"
                                                    },
                                                    "name": "BidFactory"
                                                  },
                                                  "arguments": []
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1267,
                                                  "end": 1273,
                                                  "loc": {
                                                    "start": {
                                                      "line": 36,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 36,
                                                      "column": 43
                                                    },
                                                    "identifierName": "create"
                                                  },
                                                  "name": "create"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 1274,
                                                  "end": 1281,
                                                  "loc": {
                                                    "start": {
                                                      "line": 36,
                                                      "column": 44
                                                    },
                                                    "end": {
                                                      "line": 36,
                                                      "column": 51
                                                    },
                                                    "identifierName": "bidData"
                                                  },
                                                  "name": "bidData"
                                                },
                                                {
                                                  "type": "MemberExpression",
                                                  "start": 1283,
                                                  "end": 1295,
                                                  "loc": {
                                                    "start": {
                                                      "line": 36,
                                                      "column": 53
                                                    },
                                                    "end": {
                                                      "line": 36,
                                                      "column": 65
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 1283,
                                                    "end": 1287,
                                                    "loc": {
                                                      "start": {
                                                        "line": 36,
                                                        "column": 53
                                                      },
                                                      "end": {
                                                        "line": 36,
                                                        "column": 57
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 1288,
                                                    "end": 1295,
                                                    "loc": {
                                                      "start": {
                                                        "line": 36,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 36,
                                                        "column": 65
                                                      },
                                                      "identifierName": "context"
                                                    },
                                                    "name": "context"
                                                  },
                                                  "computed": false
                                                },
                                                {
                                                  "type": "Identifier",
                                                  "start": 1297,
                                                  "end": 1304,
                                                  "loc": {
                                                    "start": {
                                                      "line": 36,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 36,
                                                      "column": 74
                                                    },
                                                    "identifierName": "project"
                                                  },
                                                  "name": "project"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "kind": "const"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 1315,
                                        "end": 1338,
                                        "loc": {
                                          "start": {
                                            "line": 37,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 37,
                                            "column": 31
                                          }
                                        },
                                        "expression": {
                                          "type": "CallExpression",
                                          "start": 1315,
                                          "end": 1337,
                                          "loc": {
                                            "start": {
                                              "line": 37,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 37,
                                              "column": 30
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1315,
                                            "end": 1332,
                                            "loc": {
                                              "start": {
                                                "line": 37,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 37,
                                                "column": 25
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 1315,
                                              "end": 1322,
                                              "loc": {
                                                "start": {
                                                  "line": 37,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 37,
                                                  "column": 15
                                                },
                                                "identifierName": "project"
                                              },
                                              "name": "project"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1323,
                                              "end": 1332,
                                              "loc": {
                                                "start": {
                                                  "line": 37,
                                                  "column": 16
                                                },
                                                "end": {
                                                  "line": 37,
                                                  "column": 25
                                                },
                                                "identifierName": "attachBid"
                                              },
                                              "name": "attachBid"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 1333,
                                              "end": 1336,
                                              "loc": {
                                                "start": {
                                                  "line": 37,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 37,
                                                  "column": 29
                                                },
                                                "identifierName": "bid"
                                              },
                                              "name": "bid"
                                            }
                                          ]
                                        }
                                      }
                                    ],
                                    "directives": []
                                  }
                                }
                              ]
                            },
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " load bid data",
                                "start": 1356,
                                "end": 1372,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 22
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 1379,
                            "end": 1555,
                            "loc": {
                              "start": {
                                "line": 41,
                                "column": 6
                              },
                              "end": {
                                "line": 44,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 1383,
                              "end": 1398,
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 10
                                },
                                "end": {
                                  "line": 41,
                                  "column": 25
                                },
                                "identifierName": "loadBidEntities"
                              },
                              "name": "loadBidEntities",
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1400,
                              "end": 1555,
                              "loc": {
                                "start": {
                                  "line": 41,
                                  "column": 27
                                },
                                "end": {
                                  "line": 44,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1410,
                                  "end": 1503,
                                  "loc": {
                                    "start": {
                                      "line": 42,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 42,
                                      "column": 101
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1416,
                                      "end": 1502,
                                      "loc": {
                                        "start": {
                                          "line": 42,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 42,
                                          "column": 100
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1416,
                                        "end": 1431,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 42,
                                            "column": 29
                                          },
                                          "identifierName": "loadingPromises"
                                        },
                                        "name": "loadingPromises"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 1434,
                                        "end": 1502,
                                        "loc": {
                                          "start": {
                                            "line": 42,
                                            "column": 32
                                          },
                                          "end": {
                                            "line": 42,
                                            "column": 100
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 1434,
                                          "end": 1465,
                                          "loc": {
                                            "start": {
                                              "line": 42,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 42,
                                              "column": 63
                                            }
                                          },
                                          "object": {
                                            "type": "CallExpression",
                                            "start": 1434,
                                            "end": 1461,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 59
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 1434,
                                              "end": 1447,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 1434,
                                                "end": 1440,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 32
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 38
                                                  },
                                                  "identifierName": "Object"
                                                },
                                                "name": "Object"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1441,
                                                "end": 1447,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 39
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 45
                                                  },
                                                  "identifierName": "values"
                                                },
                                                "name": "values"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 1448,
                                                "end": 1460,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 46
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 58
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1448,
                                                  "end": 1455,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 53
                                                    },
                                                    "identifierName": "project"
                                                  },
                                                  "name": "project"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1456,
                                                  "end": 1460,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 54
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 58
                                                    },
                                                    "identifierName": "bids"
                                                  },
                                                  "name": "bids"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 1462,
                                            "end": 1465,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 63
                                              },
                                              "identifierName": "map"
                                            },
                                            "name": "map"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "ArrowFunctionExpression",
                                            "start": 1466,
                                            "end": 1501,
                                            "loc": {
                                              "start": {
                                                "line": 42,
                                                "column": 64
                                              },
                                              "end": {
                                                "line": 42,
                                                "column": 99
                                              }
                                            },
                                            "id": null,
                                            "generator": false,
                                            "expression": true,
                                            "async": false,
                                            "params": [
                                              {
                                                "type": "Identifier",
                                                "start": 1466,
                                                "end": 1469,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 67
                                                  },
                                                  "identifierName": "bid"
                                                },
                                                "name": "bid"
                                              }
                                            ],
                                            "body": {
                                              "type": "CallExpression",
                                              "start": 1473,
                                              "end": 1501,
                                              "loc": {
                                                "start": {
                                                  "line": 42,
                                                  "column": 71
                                                },
                                                "end": {
                                                  "line": 42,
                                                  "column": 99
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 1473,
                                                "end": 1481,
                                                "loc": {
                                                  "start": {
                                                    "line": 42,
                                                    "column": 71
                                                  },
                                                  "end": {
                                                    "line": 42,
                                                    "column": 79
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 1473,
                                                  "end": 1476,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 71
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 74
                                                    },
                                                    "identifierName": "bid"
                                                  },
                                                  "name": "bid"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1477,
                                                  "end": 1481,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 75
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 79
                                                    },
                                                    "identifierName": "load"
                                                  },
                                                  "name": "load"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "ObjectExpression",
                                                  "start": 1482,
                                                  "end": 1500,
                                                  "loc": {
                                                    "start": {
                                                      "line": 42,
                                                      "column": 80
                                                    },
                                                    "end": {
                                                      "line": 42,
                                                      "column": 98
                                                    }
                                                  },
                                                  "properties": [
                                                    {
                                                      "type": "ObjectProperty",
                                                      "start": 1484,
                                                      "end": 1498,
                                                      "loc": {
                                                        "start": {
                                                          "line": 42,
                                                          "column": 82
                                                        },
                                                        "end": {
                                                          "line": 42,
                                                          "column": 96
                                                        }
                                                      },
                                                      "method": false,
                                                      "shorthand": false,
                                                      "computed": false,
                                                      "key": {
                                                        "type": "Identifier",
                                                        "start": 1484,
                                                        "end": 1492,
                                                        "loc": {
                                                          "start": {
                                                            "line": 42,
                                                            "column": 82
                                                          },
                                                          "end": {
                                                            "line": 42,
                                                            "column": 90
                                                          },
                                                          "identifierName": "skipSave"
                                                        },
                                                        "name": "skipSave"
                                                      },
                                                      "value": {
                                                        "type": "BooleanLiteral",
                                                        "start": 1494,
                                                        "end": 1498,
                                                        "loc": {
                                                          "start": {
                                                            "line": 42,
                                                            "column": 92
                                                          },
                                                          "end": {
                                                            "line": 42,
                                                            "column": 96
                                                          }
                                                        },
                                                        "value": true
                                                      }
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "const"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1512,
                                  "end": 1547,
                                  "loc": {
                                    "start": {
                                      "line": 43,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 43,
                                      "column": 43
                                    }
                                  },
                                  "expression": {
                                    "type": "AwaitExpression",
                                    "start": 1512,
                                    "end": 1546,
                                    "loc": {
                                      "start": {
                                        "line": 43,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 43,
                                        "column": 42
                                      }
                                    },
                                    "argument": {
                                      "type": "CallExpression",
                                      "start": 1518,
                                      "end": 1546,
                                      "loc": {
                                        "start": {
                                          "line": 43,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 43,
                                          "column": 42
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 1518,
                                        "end": 1529,
                                        "loc": {
                                          "start": {
                                            "line": 43,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 43,
                                            "column": 25
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 1518,
                                          "end": 1525,
                                          "loc": {
                                            "start": {
                                              "line": 43,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 43,
                                              "column": 21
                                            },
                                            "identifierName": "Promise"
                                          },
                                          "name": "Promise"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 1526,
                                          "end": 1529,
                                          "loc": {
                                            "start": {
                                              "line": 43,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 43,
                                              "column": 25
                                            },
                                            "identifierName": "all"
                                          },
                                          "name": "all"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "Identifier",
                                          "start": 1530,
                                          "end": 1545,
                                          "loc": {
                                            "start": {
                                              "line": 43,
                                              "column": 26
                                            },
                                            "end": {
                                              "line": 43,
                                              "column": 41
                                            },
                                            "identifierName": "loadingPromises"
                                          },
                                          "name": "loadingPromises"
                                        }
                                      ]
                                    }
                                  }
                                }
                              ],
                              "directives": [],
                              "trailingComments": null
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " load bid data",
                                "start": 1356,
                                "end": 1372,
                                "loc": {
                                  "start": {
                                    "line": 40,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 40,
                                    "column": 22
                                  }
                                }
                              }
                            ],
                            "trailingComments": [
                              {
                                "type": "CommentLine",
                                "value": " load industry-wide predictions and line items if the user has access",
                                "start": 1563,
                                "end": 1634,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 77
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "IfStatement",
                            "start": 1641,
                            "end": 2055,
                            "loc": {
                              "start": {
                                "line": 47,
                                "column": 6
                              },
                              "end": {
                                "line": 52,
                                "column": 7
                              }
                            },
                            "test": {
                              "type": "LogicalExpression",
                              "start": 1645,
                              "end": 1728,
                              "loc": {
                                "start": {
                                  "line": 47,
                                  "column": 10
                                },
                                "end": {
                                  "line": 47,
                                  "column": 93
                                }
                              },
                              "left": {
                                "type": "BinaryExpression",
                                "start": 1645,
                                "end": 1676,
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 41
                                  }
                                },
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 1645,
                                  "end": 1662,
                                  "loc": {
                                    "start": {
                                      "line": 47,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 47,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1645,
                                    "end": 1657,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 22
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 1645,
                                      "end": 1649,
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 14
                                        }
                                      },
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1650,
                                      "end": 1657,
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 22
                                        },
                                        "identifierName": "context"
                                      },
                                      "name": "context"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1658,
                                    "end": 1662,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 27
                                      },
                                      "identifierName": "user"
                                    },
                                    "name": "user"
                                  },
                                  "computed": false,
                                  "leadingComments": null
                                },
                                "operator": "!==",
                                "right": {
                                  "type": "Identifier",
                                  "start": 1667,
                                  "end": 1676,
                                  "loc": {
                                    "start": {
                                      "line": 47,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 47,
                                      "column": 41
                                    },
                                    "identifierName": "undefined"
                                  },
                                  "name": "undefined"
                                },
                                "leadingComments": null
                              },
                              "operator": "&&",
                              "right": {
                                "type": "MemberExpression",
                                "start": 1680,
                                "end": 1728,
                                "loc": {
                                  "start": {
                                    "line": 47,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 47,
                                    "column": 93
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 1680,
                                  "end": 1697,
                                  "loc": {
                                    "start": {
                                      "line": 47,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 47,
                                      "column": 62
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 1680,
                                    "end": 1692,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 57
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 1680,
                                      "end": 1684,
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 49
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 1685,
                                      "end": 1692,
                                      "loc": {
                                        "start": {
                                          "line": 47,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 47,
                                          "column": 57
                                        },
                                        "identifierName": "context"
                                      },
                                      "name": "context"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 1693,
                                    "end": 1697,
                                    "loc": {
                                      "start": {
                                        "line": 47,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 47,
                                        "column": 62
                                      },
                                      "identifierName": "user"
                                    },
                                    "name": "user"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 1698,
                                  "end": 1728,
                                  "loc": {
                                    "start": {
                                      "line": 47,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 47,
                                      "column": 93
                                    },
                                    "identifierName": "_has_industry_wide_predictions"
                                  },
                                  "name": "_has_industry_wide_predictions"
                                },
                                "computed": false
                              },
                              "leadingComments": null
                            },
                            "consequent": {
                              "type": "BlockStatement",
                              "start": 1730,
                              "end": 2055,
                              "loc": {
                                "start": {
                                  "line": 47,
                                  "column": 95
                                },
                                "end": {
                                  "line": 52,
                                  "column": 7
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1740,
                                  "end": 1844,
                                  "loc": {
                                    "start": {
                                      "line": 48,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 48,
                                      "column": 112
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1746,
                                      "end": 1843,
                                      "loc": {
                                        "start": {
                                          "line": 48,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 48,
                                          "column": 111
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1746,
                                        "end": 1774,
                                        "loc": {
                                          "start": {
                                            "line": 48,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 48,
                                            "column": 42
                                          },
                                          "identifierName": "industryWidePredictionModels"
                                        },
                                        "name": "industryWidePredictionModels"
                                      },
                                      "init": {
                                        "type": "AwaitExpression",
                                        "start": 1777,
                                        "end": 1843,
                                        "loc": {
                                          "start": {
                                            "line": 48,
                                            "column": 45
                                          },
                                          "end": {
                                            "line": 48,
                                            "column": 111
                                          }
                                        },
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 1783,
                                          "end": 1843,
                                          "loc": {
                                            "start": {
                                              "line": 48,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 48,
                                              "column": 111
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1783,
                                            "end": 1841,
                                            "loc": {
                                              "start": {
                                                "line": 48,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 48,
                                                "column": 109
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1783,
                                              "end": 1837,
                                              "loc": {
                                                "start": {
                                                  "line": 48,
                                                  "column": 51
                                                },
                                                "end": {
                                                  "line": 48,
                                                  "column": 105
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1783,
                                                "end": 1808,
                                                "loc": {
                                                  "start": {
                                                    "line": 48,
                                                    "column": 51
                                                  },
                                                  "end": {
                                                    "line": 48,
                                                    "column": 76
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 1783,
                                                  "end": 1795,
                                                  "loc": {
                                                    "start": {
                                                      "line": 48,
                                                      "column": 51
                                                    },
                                                    "end": {
                                                      "line": 48,
                                                      "column": 63
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 1783,
                                                    "end": 1787,
                                                    "loc": {
                                                      "start": {
                                                        "line": 48,
                                                        "column": 51
                                                      },
                                                      "end": {
                                                        "line": 48,
                                                        "column": 55
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 1788,
                                                    "end": 1795,
                                                    "loc": {
                                                      "start": {
                                                        "line": 48,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 48,
                                                        "column": 63
                                                      },
                                                      "identifierName": "context"
                                                    },
                                                    "name": "context"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1796,
                                                  "end": 1808,
                                                  "loc": {
                                                    "start": {
                                                      "line": 48,
                                                      "column": 64
                                                    },
                                                    "end": {
                                                      "line": 48,
                                                      "column": 76
                                                    },
                                                    "identifierName": "repositories"
                                                  },
                                                  "name": "repositories"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1809,
                                                "end": 1837,
                                                "loc": {
                                                  "start": {
                                                    "line": 48,
                                                    "column": 77
                                                  },
                                                  "end": {
                                                    "line": 48,
                                                    "column": 105
                                                  },
                                                  "identifierName": "industryWidePredictionModels"
                                                },
                                                "name": "industryWidePredictionModels"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1838,
                                              "end": 1841,
                                              "loc": {
                                                "start": {
                                                  "line": 48,
                                                  "column": 106
                                                },
                                                "end": {
                                                  "line": 48,
                                                  "column": 109
                                                },
                                                "identifierName": "get"
                                              },
                                              "name": "get"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "const"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 1853,
                                  "end": 1921,
                                  "loc": {
                                    "start": {
                                      "line": 49,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 49,
                                      "column": 76
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 1853,
                                    "end": 1920,
                                    "loc": {
                                      "start": {
                                        "line": 49,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 49,
                                        "column": 75
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 1853,
                                      "end": 1889,
                                      "loc": {
                                        "start": {
                                          "line": 49,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 49,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 1853,
                                        "end": 1860,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 15
                                          },
                                          "identifierName": "project"
                                        },
                                        "name": "project"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 1861,
                                        "end": 1889,
                                        "loc": {
                                          "start": {
                                            "line": 49,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 49,
                                            "column": 44
                                          },
                                          "identifierName": "industryWidePredictionModels"
                                        },
                                        "name": "industryWidePredictionModels"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 1892,
                                      "end": 1920,
                                      "loc": {
                                        "start": {
                                          "line": 49,
                                          "column": 47
                                        },
                                        "end": {
                                          "line": 49,
                                          "column": 75
                                        },
                                        "identifierName": "industryWidePredictionModels"
                                      },
                                      "name": "industryWidePredictionModels"
                                    }
                                  }
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 1930,
                                  "end": 2002,
                                  "loc": {
                                    "start": {
                                      "line": 50,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 50,
                                      "column": 80
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 1936,
                                      "end": 2001,
                                      "loc": {
                                        "start": {
                                          "line": 50,
                                          "column": 14
                                        },
                                        "end": {
                                          "line": 50,
                                          "column": 79
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 1936,
                                        "end": 1948,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 14
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 26
                                          },
                                          "identifierName": "lineItemDefs"
                                        },
                                        "name": "lineItemDefs"
                                      },
                                      "init": {
                                        "type": "AwaitExpression",
                                        "start": 1951,
                                        "end": 2001,
                                        "loc": {
                                          "start": {
                                            "line": 50,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 50,
                                            "column": 79
                                          }
                                        },
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 1957,
                                          "end": 2001,
                                          "loc": {
                                            "start": {
                                              "line": 50,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 50,
                                              "column": 79
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 1957,
                                            "end": 1999,
                                            "loc": {
                                              "start": {
                                                "line": 50,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 50,
                                                "column": 77
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 1957,
                                              "end": 1995,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 73
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 1957,
                                                "end": 1982,
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 35
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 60
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 1957,
                                                  "end": 1969,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 47
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 1957,
                                                    "end": 1961,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 35
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 39
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 1962,
                                                    "end": 1969,
                                                    "loc": {
                                                      "start": {
                                                        "line": 50,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 50,
                                                        "column": 47
                                                      },
                                                      "identifierName": "context"
                                                    },
                                                    "name": "context"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 1970,
                                                  "end": 1982,
                                                  "loc": {
                                                    "start": {
                                                      "line": 50,
                                                      "column": 48
                                                    },
                                                    "end": {
                                                      "line": 50,
                                                      "column": 60
                                                    },
                                                    "identifierName": "repositories"
                                                  },
                                                  "name": "repositories"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 1983,
                                                "end": 1995,
                                                "loc": {
                                                  "start": {
                                                    "line": 50,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 50,
                                                    "column": 73
                                                  },
                                                  "identifierName": "lineItemDefs"
                                                },
                                                "name": "lineItemDefs"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 1996,
                                              "end": 1999,
                                              "loc": {
                                                "start": {
                                                  "line": 50,
                                                  "column": 74
                                                },
                                                "end": {
                                                  "line": 50,
                                                  "column": 77
                                                },
                                                "identifierName": "get"
                                              },
                                              "name": "get"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    }
                                  ],
                                  "kind": "const"
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 2011,
                                  "end": 2047,
                                  "loc": {
                                    "start": {
                                      "line": 51,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 51,
                                      "column": 44
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 2011,
                                    "end": 2046,
                                    "loc": {
                                      "start": {
                                        "line": 51,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 51,
                                        "column": 43
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 2011,
                                      "end": 2031,
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 2011,
                                        "end": 2018,
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 15
                                          },
                                          "identifierName": "project"
                                        },
                                        "name": "project"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2019,
                                        "end": 2031,
                                        "loc": {
                                          "start": {
                                            "line": 51,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 51,
                                            "column": 28
                                          },
                                          "identifierName": "lineItemDefs"
                                        },
                                        "name": "lineItemDefs"
                                      },
                                      "computed": false
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 2034,
                                      "end": 2046,
                                      "loc": {
                                        "start": {
                                          "line": 51,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 51,
                                          "column": 43
                                        },
                                        "identifierName": "lineItemDefs"
                                      },
                                      "name": "lineItemDefs"
                                    }
                                  }
                                }
                              ],
                              "directives": []
                            },
                            "alternate": null,
                            "leadingComments": [
                              {
                                "type": "CommentLine",
                                "value": " load industry-wide predictions and line items if the user has access",
                                "start": 1563,
                                "end": 1634,
                                "loc": {
                                  "start": {
                                    "line": 46,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 46,
                                    "column": 77
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 2063,
                            "end": 2078,
                            "loc": {
                              "start": {
                                "line": 54,
                                "column": 6
                              },
                              "end": {
                                "line": 54,
                                "column": 21
                              }
                            },
                            "expression": {
                              "type": "CallExpression",
                              "start": 2063,
                              "end": 2077,
                              "loc": {
                                "start": {
                                  "line": 54,
                                  "column": 6
                                },
                                "end": {
                                  "line": 54,
                                  "column": 20
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 2063,
                                "end": 2075,
                                "loc": {
                                  "start": {
                                    "line": 54,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 54,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 2063,
                                  "end": 2070,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 13
                                    },
                                    "identifierName": "project"
                                  },
                                  "name": "project"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2071,
                                  "end": 2075,
                                  "loc": {
                                    "start": {
                                      "line": 54,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 54,
                                      "column": 18
                                    },
                                    "identifierName": "bind"
                                  },
                                  "name": "bind"
                                },
                                "computed": false
                              },
                              "arguments": []
                            }
                          },
                          {
                            "type": "ReturnStatement",
                            "start": 2085,
                            "end": 2100,
                            "loc": {
                              "start": {
                                "line": 55,
                                "column": 6
                              },
                              "end": {
                                "line": 55,
                                "column": 21
                              }
                            },
                            "argument": {
                              "type": "Identifier",
                              "start": 2092,
                              "end": 2099,
                              "loc": {
                                "start": {
                                  "line": 55,
                                  "column": 13
                                },
                                "end": {
                                  "line": 55,
                                  "column": 20
                                },
                                "identifierName": "project"
                              },
                              "name": "project"
                            }
                          }
                        ],
                        "directives": []
                      },
                      "handler": {
                        "type": "CatchClause",
                        "start": 2107,
                        "end": 2164,
                        "loc": {
                          "start": {
                            "line": 56,
                            "column": 6
                          },
                          "end": {
                            "line": 58,
                            "column": 5
                          }
                        },
                        "param": {
                          "type": "Identifier",
                          "start": 2114,
                          "end": 2119,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 13
                            },
                            "end": {
                              "line": 56,
                              "column": 18
                            },
                            "identifierName": "error"
                          },
                          "name": "error"
                        },
                        "body": {
                          "type": "BlockStatement",
                          "start": 2121,
                          "end": 2164,
                          "loc": {
                            "start": {
                              "line": 56,
                              "column": 20
                            },
                            "end": {
                              "line": 58,
                              "column": 5
                            }
                          },
                          "body": [
                            {
                              "type": "ReturnStatement",
                              "start": 2129,
                              "end": 2158,
                              "loc": {
                                "start": {
                                  "line": 57,
                                  "column": 6
                                },
                                "end": {
                                  "line": 57,
                                  "column": 35
                                }
                              },
                              "argument": {
                                "type": "CallExpression",
                                "start": 2136,
                                "end": 2157,
                                "loc": {
                                  "start": {
                                    "line": 57,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 57,
                                    "column": 34
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 2136,
                                  "end": 2150,
                                  "loc": {
                                    "start": {
                                      "line": 57,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 57,
                                      "column": 27
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 2136,
                                    "end": 2143,
                                    "loc": {
                                      "start": {
                                        "line": 57,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 57,
                                        "column": 20
                                      },
                                      "identifierName": "Promise"
                                    },
                                    "name": "Promise"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 2144,
                                    "end": 2150,
                                    "loc": {
                                      "start": {
                                        "line": 57,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 57,
                                        "column": 27
                                      },
                                      "identifierName": "reject"
                                    },
                                    "name": "reject"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 2151,
                                    "end": 2156,
                                    "loc": {
                                      "start": {
                                        "line": 57,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 57,
                                        "column": 33
                                      },
                                      "identifierName": "error"
                                    },
                                    "name": "error"
                                  }
                                ]
                              }
                            }
                          ],
                          "directives": []
                        }
                      },
                      "guardedHandlers": [],
                      "finalizer": null
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Loads a project and bid instances.\n   *\n   * @param {number} projectId The id of the project to be loaded\n   * @param {object} options Loading options\n   * @param {boolean} [options.loadBidEntities=true] Determines if the bids should be loaded with their entities. They can be loaded later with bid.load() if\n   * @returns {Promise<Project>}\n   ",
                    "start": 524,
                    "end": 880,
                    "loc": {
                      "start": {
                        "line": 20,
                        "column": 2
                      },
                      "end": {
                        "line": 27,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Generate a new project instance based on the original data from the given project.\n   * For safety, any methods involving repositories or persistance are absent in the clone.\n   *\n   * @param {Project} project The project instance to make a virtual clone of.\n   * @param {number[]} bidIds Optionally limit the bids that get cloned into the virtual project clone by giving their IDs here.\n   * @return {Project}\n   ",
                    "start": 2172,
                    "end": 2597,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 2
                      },
                      "end": {
                        "line": 68,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 2600,
                "end": 3374,
                "loc": {
                  "start": {
                    "line": 69,
                    "column": 2
                  },
                  "end": {
                    "line": 89,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 2600,
                  "end": 2616,
                  "loc": {
                    "start": {
                      "line": 69,
                      "column": 2
                    },
                    "end": {
                      "line": 69,
                      "column": 18
                    },
                    "identifierName": "loadVirtualClone"
                  },
                  "name": "loadVirtualClone",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 2617,
                    "end": 2624,
                    "loc": {
                      "start": {
                        "line": 69,
                        "column": 19
                      },
                      "end": {
                        "line": 69,
                        "column": 26
                      },
                      "identifierName": "project"
                    },
                    "name": "project"
                  },
                  {
                    "type": "AssignmentPattern",
                    "start": 2626,
                    "end": 2639,
                    "loc": {
                      "start": {
                        "line": 69,
                        "column": 28
                      },
                      "end": {
                        "line": 69,
                        "column": 41
                      }
                    },
                    "left": {
                      "type": "Identifier",
                      "start": 2626,
                      "end": 2632,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 28
                        },
                        "end": {
                          "line": 69,
                          "column": 34
                        },
                        "identifierName": "bidIds"
                      },
                      "name": "bidIds"
                    },
                    "right": {
                      "type": "NullLiteral",
                      "start": 2635,
                      "end": 2639,
                      "loc": {
                        "start": {
                          "line": 69,
                          "column": 37
                        },
                        "end": {
                          "line": 69,
                          "column": 41
                        }
                      }
                    }
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 2641,
                  "end": 3374,
                  "loc": {
                    "start": {
                      "line": 69,
                      "column": 43
                    },
                    "end": {
                      "line": 89,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 2647,
                      "end": 2696,
                      "loc": {
                        "start": {
                          "line": 70,
                          "column": 4
                        },
                        "end": {
                          "line": 70,
                          "column": 53
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2653,
                          "end": 2695,
                          "loc": {
                            "start": {
                              "line": 70,
                              "column": 10
                            },
                            "end": {
                              "line": 70,
                              "column": 52
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2653,
                            "end": 2664,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 10
                              },
                              "end": {
                                "line": 70,
                                "column": 21
                              },
                              "identifierName": "projectData"
                            },
                            "name": "projectData"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 2667,
                            "end": 2695,
                            "loc": {
                              "start": {
                                "line": 70,
                                "column": 24
                              },
                              "end": {
                                "line": 70,
                                "column": 52
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 2667,
                              "end": 2676,
                              "loc": {
                                "start": {
                                  "line": 70,
                                  "column": 24
                                },
                                "end": {
                                  "line": 70,
                                  "column": 33
                                },
                                "identifierName": "cloneDeep"
                              },
                              "name": "cloneDeep"
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 2677,
                                "end": 2694,
                                "loc": {
                                  "start": {
                                    "line": 70,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 70,
                                    "column": 51
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 2677,
                                  "end": 2684,
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 70,
                                      "column": 41
                                    },
                                    "identifierName": "project"
                                  },
                                  "name": "project"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2685,
                                  "end": 2694,
                                  "loc": {
                                    "start": {
                                      "line": 70,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 70,
                                      "column": 51
                                    },
                                    "identifierName": "_original"
                                  },
                                  "name": "_original"
                                },
                                "computed": false
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "const"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 2701,
                      "end": 2783,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 4
                        },
                        "end": {
                          "line": 71,
                          "column": 86
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2707,
                          "end": 2782,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 10
                            },
                            "end": {
                              "line": 71,
                              "column": 85
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2707,
                            "end": 2721,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 10
                              },
                              "end": {
                                "line": 71,
                                "column": 24
                              },
                              "identifierName": "virtualProject"
                            },
                            "name": "virtualProject"
                          },
                          "init": {
                            "type": "NewExpression",
                            "start": 2724,
                            "end": 2782,
                            "loc": {
                              "start": {
                                "line": 71,
                                "column": 27
                              },
                              "end": {
                                "line": 71,
                                "column": 85
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 2728,
                              "end": 2735,
                              "loc": {
                                "start": {
                                  "line": 71,
                                  "column": 31
                                },
                                "end": {
                                  "line": 71,
                                  "column": 38
                                },
                                "identifierName": "Project"
                              },
                              "name": "Project"
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 2736,
                                "end": 2747,
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 50
                                  },
                                  "identifierName": "projectData"
                                },
                                "name": "projectData"
                              },
                              {
                                "type": "NewExpression",
                                "start": 2749,
                                "end": 2781,
                                "loc": {
                                  "start": {
                                    "line": 71,
                                    "column": 52
                                  },
                                  "end": {
                                    "line": 71,
                                    "column": 84
                                  }
                                },
                                "callee": {
                                  "type": "Identifier",
                                  "start": 2753,
                                  "end": 2767,
                                  "loc": {
                                    "start": {
                                      "line": 71,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 71,
                                      "column": 70
                                    },
                                    "identifierName": "ProjectService"
                                  },
                                  "name": "ProjectService"
                                },
                                "arguments": [
                                  {
                                    "type": "MemberExpression",
                                    "start": 2768,
                                    "end": 2780,
                                    "loc": {
                                      "start": {
                                        "line": 71,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 71,
                                        "column": 83
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 2768,
                                      "end": 2772,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 75
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2773,
                                      "end": 2780,
                                      "loc": {
                                        "start": {
                                          "line": 71,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 71,
                                          "column": 83
                                        },
                                        "identifierName": "context"
                                      },
                                      "name": "context"
                                    },
                                    "computed": false
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "const",
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove dangerous properties and methods that allow for persistance or repo access",
                          "start": 2789,
                          "end": 2873,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 4
                            },
                            "end": {
                              "line": 73,
                              "column": 88
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 2878,
                      "end": 2962,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 4
                        },
                        "end": {
                          "line": 74,
                          "column": 88
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 2884,
                          "end": 2961,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 10
                            },
                            "end": {
                              "line": 74,
                              "column": 87
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 2884,
                            "end": 2900,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 10
                              },
                              "end": {
                                "line": 74,
                                "column": 26
                              },
                              "identifierName": "dangerousMethods"
                            },
                            "name": "dangerousMethods",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 2903,
                            "end": 2961,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 29
                              },
                              "end": {
                                "line": 74,
                                "column": 87
                              }
                            },
                            "elements": [
                              {
                                "type": "StringLiteral",
                                "start": 2904,
                                "end": 2916,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 42
                                  }
                                },
                                "extra": {
                                  "rawValue": "attachUser",
                                  "raw": "\"attachUser\""
                                },
                                "value": "attachUser"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 2918,
                                "end": 2930,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 56
                                  }
                                },
                                "extra": {
                                  "rawValue": "detachUser",
                                  "raw": "\"detachUser\""
                                },
                                "value": "detachUser"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 2932,
                                "end": 2943,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 69
                                  }
                                },
                                "extra": {
                                  "rawValue": "createBid",
                                  "raw": "\"createBid\""
                                },
                                "value": "createBid"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 2945,
                                "end": 2951,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 71
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 77
                                  }
                                },
                                "extra": {
                                  "rawValue": "save",
                                  "raw": "\"save\""
                                },
                                "value": "save"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 2953,
                                "end": 2960,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 79
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 86
                                  }
                                },
                                "extra": {
                                  "rawValue": "clone",
                                  "raw": "\"clone\""
                                },
                                "value": "clone"
                              }
                            ]
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "const",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " remove dangerous properties and methods that allow for persistance or repo access",
                          "start": 2789,
                          "end": 2873,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 4
                            },
                            "end": {
                              "line": 73,
                              "column": 88
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 2967,
                      "end": 3053,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 4
                        },
                        "end": {
                          "line": 77,
                          "column": 7
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 2967,
                        "end": 3052,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 4
                          },
                          "end": {
                            "line": 77,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2967,
                          "end": 2991,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 4
                            },
                            "end": {
                              "line": 75,
                              "column": 28
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 2967,
                            "end": 2983,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 4
                              },
                              "end": {
                                "line": 75,
                                "column": 20
                              },
                              "identifierName": "dangerousMethods"
                            },
                            "name": "dangerousMethods"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2984,
                            "end": 2991,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 21
                              },
                              "end": {
                                "line": 75,
                                "column": 28
                              },
                              "identifierName": "forEach"
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 2992,
                            "end": 3051,
                            "loc": {
                              "start": {
                                "line": 75,
                                "column": 29
                              },
                              "end": {
                                "line": 77,
                                "column": 5
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 2992,
                                "end": 2998,
                                "loc": {
                                  "start": {
                                    "line": 75,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 75,
                                    "column": 35
                                  },
                                  "identifierName": "method"
                                },
                                "name": "method"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 3002,
                              "end": 3051,
                              "loc": {
                                "start": {
                                  "line": 75,
                                  "column": 39
                                },
                                "end": {
                                  "line": 77,
                                  "column": 5
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3010,
                                  "end": 3045,
                                  "loc": {
                                    "start": {
                                      "line": 76,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 76,
                                      "column": 41
                                    }
                                  },
                                  "expression": {
                                    "type": "AssignmentExpression",
                                    "start": 3010,
                                    "end": 3044,
                                    "loc": {
                                      "start": {
                                        "line": 76,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 76,
                                        "column": 40
                                      }
                                    },
                                    "operator": "=",
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 3010,
                                      "end": 3032,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 28
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 3010,
                                        "end": 3024,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 20
                                          },
                                          "identifierName": "virtualProject"
                                        },
                                        "name": "virtualProject"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3025,
                                        "end": 3031,
                                        "loc": {
                                          "start": {
                                            "line": 76,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 76,
                                            "column": 27
                                          },
                                          "identifierName": "method"
                                        },
                                        "name": "method"
                                      },
                                      "computed": true
                                    },
                                    "right": {
                                      "type": "Identifier",
                                      "start": 3035,
                                      "end": 3044,
                                      "loc": {
                                        "start": {
                                          "line": 76,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 76,
                                          "column": 40
                                        },
                                        "identifierName": "undefined"
                                      },
                                      "name": "undefined"
                                    }
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ]
                      },
                      "trailingComments": [
                        {
                          "type": "CommentLine",
                          "value": " load the bids",
                          "start": 3059,
                          "end": 3075,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 4
                            },
                            "end": {
                              "line": 79,
                              "column": 20
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 3080,
                      "end": 3173,
                      "loc": {
                        "start": {
                          "line": 80,
                          "column": 4
                        },
                        "end": {
                          "line": 80,
                          "column": 97
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3084,
                          "end": 3172,
                          "loc": {
                            "start": {
                              "line": 80,
                              "column": 8
                            },
                            "end": {
                              "line": 80,
                              "column": 96
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3084,
                            "end": 3096,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 8
                              },
                              "end": {
                                "line": 80,
                                "column": 20
                              },
                              "identifierName": "originalBids"
                            },
                            "name": "originalBids",
                            "leadingComments": null
                          },
                          "init": {
                            "type": "ConditionalExpression",
                            "start": 3099,
                            "end": 3172,
                            "loc": {
                              "start": {
                                "line": 80,
                                "column": 23
                              },
                              "end": {
                                "line": 80,
                                "column": 96
                              }
                            },
                            "test": {
                              "type": "Identifier",
                              "start": 3099,
                              "end": 3105,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 23
                                },
                                "end": {
                                  "line": 80,
                                  "column": 29
                                },
                                "identifierName": "bidIds"
                              },
                              "name": "bidIds"
                            },
                            "consequent": {
                              "type": "CallExpression",
                              "start": 3108,
                              "end": 3142,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 32
                                },
                                "end": {
                                  "line": 80,
                                  "column": 66
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3108,
                                "end": 3118,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 42
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3108,
                                  "end": 3114,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 38
                                    },
                                    "identifierName": "bidIds"
                                  },
                                  "name": "bidIds"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3115,
                                  "end": 3118,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 42
                                    },
                                    "identifierName": "map"
                                  },
                                  "name": "map"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ArrowFunctionExpression",
                                  "start": 3119,
                                  "end": 3141,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 65
                                    }
                                  },
                                  "id": null,
                                  "generator": false,
                                  "expression": true,
                                  "async": false,
                                  "params": [
                                    {
                                      "type": "Identifier",
                                      "start": 3119,
                                      "end": 3121,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 45
                                        },
                                        "identifierName": "id"
                                      },
                                      "name": "id"
                                    }
                                  ],
                                  "body": {
                                    "type": "MemberExpression",
                                    "start": 3125,
                                    "end": 3141,
                                    "loc": {
                                      "start": {
                                        "line": 80,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 80,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 3125,
                                      "end": 3137,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 49
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 61
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 3125,
                                        "end": 3132,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 56
                                          },
                                          "identifierName": "project"
                                        },
                                        "name": "project"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3133,
                                        "end": 3137,
                                        "loc": {
                                          "start": {
                                            "line": 80,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 80,
                                            "column": 61
                                          },
                                          "identifierName": "bids"
                                        },
                                        "name": "bids"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3138,
                                      "end": 3140,
                                      "loc": {
                                        "start": {
                                          "line": 80,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 80,
                                          "column": 64
                                        },
                                        "identifierName": "id"
                                      },
                                      "name": "id"
                                    },
                                    "computed": true
                                  }
                                }
                              ]
                            },
                            "alternate": {
                              "type": "CallExpression",
                              "start": 3145,
                              "end": 3172,
                              "loc": {
                                "start": {
                                  "line": 80,
                                  "column": 69
                                },
                                "end": {
                                  "line": 80,
                                  "column": 96
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 3145,
                                "end": 3158,
                                "loc": {
                                  "start": {
                                    "line": 80,
                                    "column": 69
                                  },
                                  "end": {
                                    "line": 80,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 3145,
                                  "end": 3151,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 75
                                    },
                                    "identifierName": "Object"
                                  },
                                  "name": "Object"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3152,
                                  "end": 3158,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 82
                                    },
                                    "identifierName": "values"
                                  },
                                  "name": "values"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 3159,
                                  "end": 3171,
                                  "loc": {
                                    "start": {
                                      "line": 80,
                                      "column": 83
                                    },
                                    "end": {
                                      "line": 80,
                                      "column": 95
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 3159,
                                    "end": 3166,
                                    "loc": {
                                      "start": {
                                        "line": 80,
                                        "column": 83
                                      },
                                      "end": {
                                        "line": 80,
                                        "column": 90
                                      },
                                      "identifierName": "project"
                                    },
                                    "name": "project"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3167,
                                    "end": 3171,
                                    "loc": {
                                      "start": {
                                        "line": 80,
                                        "column": 91
                                      },
                                      "end": {
                                        "line": 80,
                                        "column": 95
                                      },
                                      "identifierName": "bids"
                                    },
                                    "name": "bids"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          "leadingComments": null
                        }
                      ],
                      "kind": "let",
                      "leadingComments": [
                        {
                          "type": "CommentLine",
                          "value": " load the bids",
                          "start": 3059,
                          "end": 3075,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 4
                            },
                            "end": {
                              "line": 79,
                              "column": 20
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 3179,
                      "end": 3244,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 4
                        },
                        "end": {
                          "line": 82,
                          "column": 69
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3185,
                          "end": 3243,
                          "loc": {
                            "start": {
                              "line": 82,
                              "column": 10
                            },
                            "end": {
                              "line": 82,
                              "column": 68
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3185,
                            "end": 3189,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 10
                              },
                              "end": {
                                "line": 82,
                                "column": 14
                              },
                              "identifierName": "bids"
                            },
                            "name": "bids"
                          },
                          "init": {
                            "type": "CallExpression",
                            "start": 3192,
                            "end": 3243,
                            "loc": {
                              "start": {
                                "line": 82,
                                "column": 17
                              },
                              "end": {
                                "line": 82,
                                "column": 68
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 3192,
                              "end": 3213,
                              "loc": {
                                "start": {
                                  "line": 82,
                                  "column": 17
                                },
                                "end": {
                                  "line": 82,
                                  "column": 38
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3192,
                                "end": 3196,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 21
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3197,
                                "end": 3213,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 38
                                  },
                                  "identifierName": "_loadVirtualBids"
                                },
                                "name": "_loadVirtualBids"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 3214,
                                "end": 3226,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 51
                                  },
                                  "identifierName": "originalBids"
                                },
                                "name": "originalBids"
                              },
                              {
                                "type": "Identifier",
                                "start": 3228,
                                "end": 3242,
                                "loc": {
                                  "start": {
                                    "line": 82,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 82,
                                    "column": 67
                                  },
                                  "identifierName": "virtualProject"
                                },
                                "name": "virtualProject"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "const"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3249,
                      "end": 3315,
                      "loc": {
                        "start": {
                          "line": 83,
                          "column": 4
                        },
                        "end": {
                          "line": 85,
                          "column": 7
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3249,
                        "end": 3314,
                        "loc": {
                          "start": {
                            "line": 83,
                            "column": 4
                          },
                          "end": {
                            "line": 85,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3249,
                          "end": 3261,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 4
                            },
                            "end": {
                              "line": 83,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3249,
                            "end": 3253,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 4
                              },
                              "end": {
                                "line": 83,
                                "column": 8
                              },
                              "identifierName": "bids"
                            },
                            "name": "bids"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3254,
                            "end": 3261,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 9
                              },
                              "end": {
                                "line": 83,
                                "column": 16
                              },
                              "identifierName": "forEach"
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 3262,
                            "end": 3313,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 17
                              },
                              "end": {
                                "line": 85,
                                "column": 5
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 3262,
                                "end": 3265,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 20
                                  },
                                  "identifierName": "bid"
                                },
                                "name": "bid"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 3269,
                              "end": 3313,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 24
                                },
                                "end": {
                                  "line": 85,
                                  "column": 5
                                }
                              },
                              "body": [
                                {
                                  "type": "ExpressionStatement",
                                  "start": 3277,
                                  "end": 3307,
                                  "loc": {
                                    "start": {
                                      "line": 84,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 84,
                                      "column": 36
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 3277,
                                    "end": 3306,
                                    "loc": {
                                      "start": {
                                        "line": 84,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 84,
                                        "column": 35
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 3277,
                                      "end": 3301,
                                      "loc": {
                                        "start": {
                                          "line": 84,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 84,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 3277,
                                        "end": 3291,
                                        "loc": {
                                          "start": {
                                            "line": 84,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 84,
                                            "column": 20
                                          },
                                          "identifierName": "virtualProject"
                                        },
                                        "name": "virtualProject"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 3292,
                                        "end": 3301,
                                        "loc": {
                                          "start": {
                                            "line": 84,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 84,
                                            "column": 30
                                          },
                                          "identifierName": "attachBid"
                                        },
                                        "name": "attachBid"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 3302,
                                        "end": 3305,
                                        "loc": {
                                          "start": {
                                            "line": 84,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 84,
                                            "column": 34
                                          },
                                          "identifierName": "bid"
                                        },
                                        "name": "bid"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3321,
                      "end": 3343,
                      "loc": {
                        "start": {
                          "line": 87,
                          "column": 4
                        },
                        "end": {
                          "line": 87,
                          "column": 26
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3321,
                        "end": 3342,
                        "loc": {
                          "start": {
                            "line": 87,
                            "column": 4
                          },
                          "end": {
                            "line": 87,
                            "column": 25
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3321,
                          "end": 3340,
                          "loc": {
                            "start": {
                              "line": 87,
                              "column": 4
                            },
                            "end": {
                              "line": 87,
                              "column": 23
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3321,
                            "end": 3335,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 4
                              },
                              "end": {
                                "line": 87,
                                "column": 18
                              },
                              "identifierName": "virtualProject"
                            },
                            "name": "virtualProject"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3336,
                            "end": 3340,
                            "loc": {
                              "start": {
                                "line": 87,
                                "column": 19
                              },
                              "end": {
                                "line": 87,
                                "column": 23
                              },
                              "identifierName": "bind"
                            },
                            "name": "bind"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 3348,
                      "end": 3370,
                      "loc": {
                        "start": {
                          "line": 88,
                          "column": 4
                        },
                        "end": {
                          "line": 88,
                          "column": 26
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 3355,
                        "end": 3369,
                        "loc": {
                          "start": {
                            "line": 88,
                            "column": 11
                          },
                          "end": {
                            "line": 88,
                            "column": 25
                          },
                          "identifierName": "virtualProject"
                        },
                        "name": "virtualProject"
                      }
                    }
                  ],
                  "directives": [],
                  "trailingComments": null
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Generate a new project instance based on the original data from the given project.\n   * For safety, any methods involving repositories or persistance are absent in the clone.\n   *\n   * @param {Project} project The project instance to make a virtual clone of.\n   * @param {number[]} bidIds Optionally limit the bids that get cloned into the virtual project clone by giving their IDs here.\n   * @return {Project}\n   ",
                    "start": 2172,
                    "end": 2597,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 2
                      },
                      "end": {
                        "line": 68,
                        "column": 5
                      }
                    }
                  }
                ],
                "trailingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Generates virtual bid clones for the virtual project clone.\n   *\n   * @param {Bid[]} originalBids Bid instances from the original project\n   * @param {Project} virtualProject The virtual project clone to attach bid clones too\n   * @return {Bid[]} Clones of the given bids\n   ",
                    "start": 3378,
                    "end": 3664,
                    "loc": {
                      "start": {
                        "line": 91,
                        "column": 2
                      },
                      "end": {
                        "line": 97,
                        "column": 5
                      }
                    }
                  }
                ]
              },
              {
                "type": "ClassMethod",
                "start": 3667,
                "end": 4356,
                "loc": {
                  "start": {
                    "line": 98,
                    "column": 2
                  },
                  "end": {
                    "line": 122,
                    "column": 3
                  }
                },
                "static": false,
                "computed": false,
                "key": {
                  "type": "Identifier",
                  "start": 3667,
                  "end": 3683,
                  "loc": {
                    "start": {
                      "line": 98,
                      "column": 2
                    },
                    "end": {
                      "line": 98,
                      "column": 18
                    },
                    "identifierName": "_loadVirtualBids"
                  },
                  "name": "_loadVirtualBids",
                  "leadingComments": null
                },
                "kind": "method",
                "id": null,
                "generator": false,
                "expression": false,
                "async": false,
                "params": [
                  {
                    "type": "Identifier",
                    "start": 3684,
                    "end": 3696,
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 19
                      },
                      "end": {
                        "line": 98,
                        "column": 31
                      },
                      "identifierName": "originalBids"
                    },
                    "name": "originalBids"
                  },
                  {
                    "type": "Identifier",
                    "start": 3698,
                    "end": 3712,
                    "loc": {
                      "start": {
                        "line": 98,
                        "column": 33
                      },
                      "end": {
                        "line": 98,
                        "column": 47
                      },
                      "identifierName": "virtualProject"
                    },
                    "name": "virtualProject"
                  }
                ],
                "body": {
                  "type": "BlockStatement",
                  "start": 3714,
                  "end": 4356,
                  "loc": {
                    "start": {
                      "line": 98,
                      "column": 49
                    },
                    "end": {
                      "line": 122,
                      "column": 3
                    }
                  },
                  "body": [
                    {
                      "type": "VariableDeclaration",
                      "start": 3720,
                      "end": 3734,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 4
                        },
                        "end": {
                          "line": 99,
                          "column": 18
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3724,
                          "end": 3733,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 8
                            },
                            "end": {
                              "line": 99,
                              "column": 17
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3724,
                            "end": 3728,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 8
                              },
                              "end": {
                                "line": 99,
                                "column": 12
                              },
                              "identifierName": "bids"
                            },
                            "name": "bids"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 3731,
                            "end": 3733,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 15
                              },
                              "end": {
                                "line": 99,
                                "column": 17
                              }
                            },
                            "elements": []
                          }
                        }
                      ],
                      "kind": "let"
                    },
                    {
                      "type": "VariableDeclaration",
                      "start": 3739,
                      "end": 3925,
                      "loc": {
                        "start": {
                          "line": 100,
                          "column": 4
                        },
                        "end": {
                          "line": 109,
                          "column": 6
                        }
                      },
                      "declarations": [
                        {
                          "type": "VariableDeclarator",
                          "start": 3745,
                          "end": 3924,
                          "loc": {
                            "start": {
                              "line": 100,
                              "column": 10
                            },
                            "end": {
                              "line": 109,
                              "column": 5
                            }
                          },
                          "id": {
                            "type": "Identifier",
                            "start": 3745,
                            "end": 3761,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 10
                              },
                              "end": {
                                "line": 100,
                                "column": 26
                              },
                              "identifierName": "dangerousMethods"
                            },
                            "name": "dangerousMethods"
                          },
                          "init": {
                            "type": "ArrayExpression",
                            "start": 3764,
                            "end": 3924,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 29
                              },
                              "end": {
                                "line": 109,
                                "column": 5
                              }
                            },
                            "elements": [
                              {
                                "type": "StringLiteral",
                                "start": 3772,
                                "end": 3788,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 22
                                  }
                                },
                                "extra": {
                                  "rawValue": "removeAssembly",
                                  "raw": "\"removeAssembly\""
                                },
                                "value": "removeAssembly"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3796,
                                "end": 3811,
                                "loc": {
                                  "start": {
                                    "line": 102,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 102,
                                    "column": 21
                                  }
                                },
                                "extra": {
                                  "rawValue": "addAssemblies",
                                  "raw": "\"addAssemblies\""
                                },
                                "value": "addAssemblies"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3819,
                                "end": 3828,
                                "loc": {
                                  "start": {
                                    "line": 103,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 103,
                                    "column": 15
                                  }
                                },
                                "extra": {
                                  "rawValue": "recover",
                                  "raw": "\"recover\""
                                },
                                "value": "recover"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3836,
                                "end": 3843,
                                "loc": {
                                  "start": {
                                    "line": 104,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 104,
                                    "column": 13
                                  }
                                },
                                "extra": {
                                  "rawValue": "clone",
                                  "raw": "\"clone\""
                                },
                                "value": "clone"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3851,
                                "end": 3859,
                                "loc": {
                                  "start": {
                                    "line": 105,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 105,
                                    "column": 14
                                  }
                                },
                                "extra": {
                                  "rawValue": "delete",
                                  "raw": "\"delete\""
                                },
                                "value": "delete"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3867,
                                "end": 3880,
                                "loc": {
                                  "start": {
                                    "line": 106,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 106,
                                    "column": 19
                                  }
                                },
                                "extra": {
                                  "rawValue": "addLineItem",
                                  "raw": "\"addLineItem\""
                                },
                                "value": "addLineItem"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3888,
                                "end": 3899,
                                "loc": {
                                  "start": {
                                    "line": 107,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 107,
                                    "column": 17
                                  }
                                },
                                "extra": {
                                  "rawValue": "addMetric",
                                  "raw": "\"addMetric\""
                                },
                                "value": "addMetric"
                              },
                              {
                                "type": "StringLiteral",
                                "start": 3907,
                                "end": 3917,
                                "loc": {
                                  "start": {
                                    "line": 108,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 108,
                                    "column": 16
                                  }
                                },
                                "extra": {
                                  "rawValue": "addField",
                                  "raw": "\"addField\""
                                },
                                "value": "addField"
                              }
                            ]
                          }
                        }
                      ],
                      "kind": "const"
                    },
                    {
                      "type": "ExpressionStatement",
                      "start": 3930,
                      "end": 4335,
                      "loc": {
                        "start": {
                          "line": 110,
                          "column": 4
                        },
                        "end": {
                          "line": 120,
                          "column": 7
                        }
                      },
                      "expression": {
                        "type": "CallExpression",
                        "start": 3930,
                        "end": 4334,
                        "loc": {
                          "start": {
                            "line": 110,
                            "column": 4
                          },
                          "end": {
                            "line": 120,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3930,
                          "end": 3950,
                          "loc": {
                            "start": {
                              "line": 110,
                              "column": 4
                            },
                            "end": {
                              "line": 110,
                              "column": 24
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3930,
                            "end": 3942,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 4
                              },
                              "end": {
                                "line": 110,
                                "column": 16
                              },
                              "identifierName": "originalBids"
                            },
                            "name": "originalBids"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3943,
                            "end": 3950,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 17
                              },
                              "end": {
                                "line": 110,
                                "column": 24
                              },
                              "identifierName": "forEach"
                            },
                            "name": "forEach"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 3951,
                            "end": 4333,
                            "loc": {
                              "start": {
                                "line": 110,
                                "column": 25
                              },
                              "end": {
                                "line": 120,
                                "column": 5
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 3951,
                                "end": 3962,
                                "loc": {
                                  "start": {
                                    "line": 110,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 110,
                                    "column": 36
                                  },
                                  "identifierName": "originalBid"
                                },
                                "name": "originalBid"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 3966,
                              "end": 4333,
                              "loc": {
                                "start": {
                                  "line": 110,
                                  "column": 40
                                },
                                "end": {
                                  "line": 120,
                                  "column": 5
                                }
                              },
                              "body": [
                                {
                                  "type": "VariableDeclaration",
                                  "start": 3974,
                                  "end": 4029,
                                  "loc": {
                                    "start": {
                                      "line": 111,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 111,
                                      "column": 61
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 3980,
                                      "end": 4028,
                                      "loc": {
                                        "start": {
                                          "line": 111,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 111,
                                          "column": 60
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 3980,
                                        "end": 3989,
                                        "loc": {
                                          "start": {
                                            "line": 111,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 111,
                                            "column": 21
                                          },
                                          "identifierName": "bidObject"
                                        },
                                        "name": "bidObject"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 3992,
                                        "end": 4028,
                                        "loc": {
                                          "start": {
                                            "line": 111,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 111,
                                            "column": 60
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 3992,
                                          "end": 4026,
                                          "loc": {
                                            "start": {
                                              "line": 111,
                                              "column": 24
                                            },
                                            "end": {
                                              "line": 111,
                                              "column": 58
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 3992,
                                            "end": 4003,
                                            "loc": {
                                              "start": {
                                                "line": 111,
                                                "column": 24
                                              },
                                              "end": {
                                                "line": 111,
                                                "column": 35
                                              },
                                              "identifierName": "originalBid"
                                            },
                                            "name": "originalBid"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4004,
                                            "end": 4026,
                                            "loc": {
                                              "start": {
                                                "line": 111,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 111,
                                                "column": 58
                                              },
                                              "identifierName": "exportDataWithEntities"
                                            },
                                            "name": "exportDataWithEntities"
                                          },
                                          "computed": false
                                        },
                                        "arguments": []
                                      }
                                    }
                                  ],
                                  "kind": "const"
                                },
                                {
                                  "type": "VariableDeclaration",
                                  "start": 4036,
                                  "end": 4113,
                                  "loc": {
                                    "start": {
                                      "line": 112,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 112,
                                      "column": 83
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 4042,
                                      "end": 4112,
                                      "loc": {
                                        "start": {
                                          "line": 112,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 112,
                                          "column": 82
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 4042,
                                        "end": 4045,
                                        "loc": {
                                          "start": {
                                            "line": 112,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 112,
                                            "column": 15
                                          },
                                          "identifierName": "bid"
                                        },
                                        "name": "bid"
                                      },
                                      "init": {
                                        "type": "CallExpression",
                                        "start": 4048,
                                        "end": 4112,
                                        "loc": {
                                          "start": {
                                            "line": 112,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 112,
                                            "column": 82
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 4048,
                                          "end": 4071,
                                          "loc": {
                                            "start": {
                                              "line": 112,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 112,
                                              "column": 41
                                            }
                                          },
                                          "object": {
                                            "type": "NewExpression",
                                            "start": 4048,
                                            "end": 4064,
                                            "loc": {
                                              "start": {
                                                "line": 112,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 112,
                                                "column": 34
                                              }
                                            },
                                            "callee": {
                                              "type": "Identifier",
                                              "start": 4052,
                                              "end": 4062,
                                              "loc": {
                                                "start": {
                                                  "line": 112,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 112,
                                                  "column": 32
                                                },
                                                "identifierName": "BidFactory"
                                              },
                                              "name": "BidFactory"
                                            },
                                            "arguments": []
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4065,
                                            "end": 4071,
                                            "loc": {
                                              "start": {
                                                "line": 112,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 112,
                                                "column": 41
                                              },
                                              "identifierName": "create"
                                            },
                                            "name": "create"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "Identifier",
                                            "start": 4072,
                                            "end": 4081,
                                            "loc": {
                                              "start": {
                                                "line": 112,
                                                "column": 42
                                              },
                                              "end": {
                                                "line": 112,
                                                "column": 51
                                              },
                                              "identifierName": "bidObject"
                                            },
                                            "name": "bidObject"
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 4083,
                                            "end": 4095,
                                            "loc": {
                                              "start": {
                                                "line": 112,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 112,
                                                "column": 65
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 4083,
                                              "end": 4087,
                                              "loc": {
                                                "start": {
                                                  "line": 112,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 112,
                                                  "column": 57
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4088,
                                              "end": 4095,
                                              "loc": {
                                                "start": {
                                                  "line": 112,
                                                  "column": 58
                                                },
                                                "end": {
                                                  "line": 112,
                                                  "column": 65
                                                },
                                                "identifierName": "context"
                                              },
                                              "name": "context"
                                            },
                                            "computed": false
                                          },
                                          {
                                            "type": "Identifier",
                                            "start": 4097,
                                            "end": 4111,
                                            "loc": {
                                              "start": {
                                                "line": 112,
                                                "column": 67
                                              },
                                              "end": {
                                                "line": 112,
                                                "column": 81
                                              },
                                              "identifierName": "virtualProject"
                                            },
                                            "name": "virtualProject"
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "kind": "const",
                                  "trailingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " remove dangerous methods from the bid (dangerous methods involve repositories and persistance)",
                                      "start": 4121,
                                      "end": 4218,
                                      "loc": {
                                        "start": {
                                          "line": 114,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 114,
                                          "column": 103
                                        }
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4225,
                                  "end": 4304,
                                  "loc": {
                                    "start": {
                                      "line": 115,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 117,
                                      "column": 9
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 4225,
                                    "end": 4303,
                                    "loc": {
                                      "start": {
                                        "line": 115,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 117,
                                        "column": 8
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4225,
                                      "end": 4249,
                                      "loc": {
                                        "start": {
                                          "line": 115,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 115,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 4225,
                                        "end": 4241,
                                        "loc": {
                                          "start": {
                                            "line": 115,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 115,
                                            "column": 22
                                          },
                                          "identifierName": "dangerousMethods"
                                        },
                                        "name": "dangerousMethods",
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4242,
                                        "end": 4249,
                                        "loc": {
                                          "start": {
                                            "line": 115,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 115,
                                            "column": 30
                                          },
                                          "identifierName": "forEach"
                                        },
                                        "name": "forEach"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "arguments": [
                                      {
                                        "type": "ArrowFunctionExpression",
                                        "start": 4250,
                                        "end": 4302,
                                        "loc": {
                                          "start": {
                                            "line": 115,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 117,
                                            "column": 7
                                          }
                                        },
                                        "id": null,
                                        "generator": false,
                                        "expression": false,
                                        "async": false,
                                        "params": [
                                          {
                                            "type": "Identifier",
                                            "start": 4250,
                                            "end": 4256,
                                            "loc": {
                                              "start": {
                                                "line": 115,
                                                "column": 31
                                              },
                                              "end": {
                                                "line": 115,
                                                "column": 37
                                              },
                                              "identifierName": "method"
                                            },
                                            "name": "method"
                                          }
                                        ],
                                        "body": {
                                          "type": "BlockStatement",
                                          "start": 4260,
                                          "end": 4302,
                                          "loc": {
                                            "start": {
                                              "line": 115,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 117,
                                              "column": 7
                                            }
                                          },
                                          "body": [
                                            {
                                              "type": "ExpressionStatement",
                                              "start": 4270,
                                              "end": 4294,
                                              "loc": {
                                                "start": {
                                                  "line": 116,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 116,
                                                  "column": 32
                                                }
                                              },
                                              "expression": {
                                                "type": "AssignmentExpression",
                                                "start": 4270,
                                                "end": 4293,
                                                "loc": {
                                                  "start": {
                                                    "line": 116,
                                                    "column": 8
                                                  },
                                                  "end": {
                                                    "line": 116,
                                                    "column": 31
                                                  }
                                                },
                                                "operator": "=",
                                                "left": {
                                                  "type": "MemberExpression",
                                                  "start": 4270,
                                                  "end": 4281,
                                                  "loc": {
                                                    "start": {
                                                      "line": 116,
                                                      "column": 8
                                                    },
                                                    "end": {
                                                      "line": 116,
                                                      "column": 19
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 4270,
                                                    "end": 4273,
                                                    "loc": {
                                                      "start": {
                                                        "line": 116,
                                                        "column": 8
                                                      },
                                                      "end": {
                                                        "line": 116,
                                                        "column": 11
                                                      },
                                                      "identifierName": "bid"
                                                    },
                                                    "name": "bid"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4274,
                                                    "end": 4280,
                                                    "loc": {
                                                      "start": {
                                                        "line": 116,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 116,
                                                        "column": 18
                                                      },
                                                      "identifierName": "method"
                                                    },
                                                    "name": "method"
                                                  },
                                                  "computed": true
                                                },
                                                "right": {
                                                  "type": "Identifier",
                                                  "start": 4284,
                                                  "end": 4293,
                                                  "loc": {
                                                    "start": {
                                                      "line": 116,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 116,
                                                      "column": 31
                                                    },
                                                    "identifierName": "undefined"
                                                  },
                                                  "name": "undefined"
                                                }
                                              }
                                            }
                                          ],
                                          "directives": []
                                        }
                                      }
                                    ],
                                    "leadingComments": null
                                  },
                                  "leadingComments": [
                                    {
                                      "type": "CommentLine",
                                      "value": " remove dangerous methods from the bid (dangerous methods involve repositories and persistance)",
                                      "start": 4121,
                                      "end": 4218,
                                      "loc": {
                                        "start": {
                                          "line": 114,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 114,
                                          "column": 103
                                        }
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "ExpressionStatement",
                                  "start": 4312,
                                  "end": 4327,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 21
                                    }
                                  },
                                  "expression": {
                                    "type": "CallExpression",
                                    "start": 4312,
                                    "end": 4326,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 20
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4312,
                                      "end": 4321,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 15
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 4312,
                                        "end": 4316,
                                        "loc": {
                                          "start": {
                                            "line": 119,
                                            "column": 6
                                          },
                                          "end": {
                                            "line": 119,
                                            "column": 10
                                          },
                                          "identifierName": "bids"
                                        },
                                        "name": "bids"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4317,
                                        "end": 4321,
                                        "loc": {
                                          "start": {
                                            "line": 119,
                                            "column": 11
                                          },
                                          "end": {
                                            "line": 119,
                                            "column": 15
                                          },
                                          "identifierName": "push"
                                        },
                                        "name": "push"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 4322,
                                        "end": 4325,
                                        "loc": {
                                          "start": {
                                            "line": 119,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 119,
                                            "column": 19
                                          },
                                          "identifierName": "bid"
                                        },
                                        "name": "bid"
                                      }
                                    ]
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ]
                      }
                    },
                    {
                      "type": "ReturnStatement",
                      "start": 4340,
                      "end": 4352,
                      "loc": {
                        "start": {
                          "line": 121,
                          "column": 4
                        },
                        "end": {
                          "line": 121,
                          "column": 16
                        }
                      },
                      "argument": {
                        "type": "Identifier",
                        "start": 4347,
                        "end": 4351,
                        "loc": {
                          "start": {
                            "line": 121,
                            "column": 11
                          },
                          "end": {
                            "line": 121,
                            "column": 15
                          },
                          "identifierName": "bids"
                        },
                        "name": "bids"
                      }
                    }
                  ],
                  "directives": []
                },
                "leadingComments": [
                  {
                    "type": "CommentBlock",
                    "value": "*\n   * Generates virtual bid clones for the virtual project clone.\n   *\n   * @param {Bid[]} originalBids Bid instances from the original project\n   * @param {Project} virtualProject The virtual project clone to attach bid clones too\n   * @return {Bid[]} Clones of the given bids\n   ",
                    "start": 3378,
                    "end": 3664,
                    "loc": {
                      "start": {
                        "line": 91,
                        "column": 2
                      },
                      "end": {
                        "line": 97,
                        "column": 5
                      }
                    }
                  }
                ]
              }
            ]
          },
          "leadingComments": [
            {
              "type": "CommentBlock",
              "value": "*\n * This class serves to quickly load a {@link Project} instance with included {@link Bid}s\n *\n * @class ProjectLoader\n ",
              "start": 196,
              "end": 321,
              "loc": {
                "start": {
                  "line": 6,
                  "column": 0
                },
                "end": {
                  "line": 10,
                  "column": 3
                }
              }
            }
          ],
          "trailingComments": []
        },
        "leadingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * This class serves to quickly load a {@link Project} instance with included {@link Bid}s\n *\n * @class ProjectLoader\n ",
            "start": 196,
            "end": 321,
            "loc": {
              "start": {
                "line": 6,
                "column": 0
              },
              "end": {
                "line": 10,
                "column": 3
              }
            }
          }
        ]
      }
    ],
    "directives": []
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": "*\n * This class serves to quickly load a {@link Project} instance with included {@link Bid}s\n *\n * @class ProjectLoader\n ",
      "start": 196,
      "end": 321,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 10,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Creates an instance of ProjectLoader.\n   * @param {PVBidContext} pvbidContext\n   ",
      "start": 361,
      "end": 453,
      "loc": {
        "start": {
          "line": 12,
          "column": 2
        },
        "end": {
          "line": 15,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Loads a project and bid instances.\n   *\n   * @param {number} projectId The id of the project to be loaded\n   * @param {object} options Loading options\n   * @param {boolean} [options.loadBidEntities=true] Determines if the bids should be loaded with their entities. They can be loaded later with bid.load() if\n   * @returns {Promise<Project>}\n   ",
      "start": 524,
      "end": 880,
      "loc": {
        "start": {
          "line": 20,
          "column": 2
        },
        "end": {
          "line": 27,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load project data",
      "start": 956,
      "end": 976,
      "loc": {
        "start": {
          "line": 30,
          "column": 6
        },
        "end": {
          "line": 30,
          "column": 26
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " instantiate project and bids",
      "start": 1072,
      "end": 1103,
      "loc": {
        "start": {
          "line": 33,
          "column": 6
        },
        "end": {
          "line": 33,
          "column": 37
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load bid data",
      "start": 1356,
      "end": 1372,
      "loc": {
        "start": {
          "line": 40,
          "column": 6
        },
        "end": {
          "line": 40,
          "column": 22
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load industry-wide predictions and line items if the user has access",
      "start": 1563,
      "end": 1634,
      "loc": {
        "start": {
          "line": 46,
          "column": 6
        },
        "end": {
          "line": 46,
          "column": 77
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Generate a new project instance based on the original data from the given project.\n   * For safety, any methods involving repositories or persistance are absent in the clone.\n   *\n   * @param {Project} project The project instance to make a virtual clone of.\n   * @param {number[]} bidIds Optionally limit the bids that get cloned into the virtual project clone by giving their IDs here.\n   * @return {Project}\n   ",
      "start": 2172,
      "end": 2597,
      "loc": {
        "start": {
          "line": 61,
          "column": 2
        },
        "end": {
          "line": 68,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove dangerous properties and methods that allow for persistance or repo access",
      "start": 2789,
      "end": 2873,
      "loc": {
        "start": {
          "line": 73,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 88
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load the bids",
      "start": 3059,
      "end": 3075,
      "loc": {
        "start": {
          "line": 79,
          "column": 4
        },
        "end": {
          "line": 79,
          "column": 20
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Generates virtual bid clones for the virtual project clone.\n   *\n   * @param {Bid[]} originalBids Bid instances from the original project\n   * @param {Project} virtualProject The virtual project clone to attach bid clones too\n   * @return {Bid[]} Clones of the given bids\n   ",
      "start": 3378,
      "end": 3664,
      "loc": {
        "start": {
          "line": 91,
          "column": 2
        },
        "end": {
          "line": 97,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove dangerous methods from the bid (dangerous methods involve repositories and persistance)",
      "start": 4121,
      "end": 4218,
      "loc": {
        "start": {
          "line": 114,
          "column": 6
        },
        "end": {
          "line": 114,
          "column": 103
        }
      }
    }
  ],
  "tokens": [
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 0,
      "end": 6,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7,
      "end": 8,
      "loc": {
        "start": {
          "line": 1,
          "column": 7
        },
        "end": {
          "line": 1,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "cloneDeep",
      "start": 9,
      "end": 18,
      "loc": {
        "start": {
          "line": 1,
          "column": 9
        },
        "end": {
          "line": 1,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19,
      "end": 20,
      "loc": {
        "start": {
          "line": 1,
          "column": 19
        },
        "end": {
          "line": 1,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 21,
      "end": 25,
      "loc": {
        "start": {
          "line": 1,
          "column": 21
        },
        "end": {
          "line": 1,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "lodash",
      "start": 26,
      "end": 34,
      "loc": {
        "start": {
          "line": 1,
          "column": 26
        },
        "end": {
          "line": 1,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 34,
      "end": 35,
      "loc": {
        "start": {
          "line": 1,
          "column": 34
        },
        "end": {
          "line": 1,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 36,
      "end": 42,
      "loc": {
        "start": {
          "line": 2,
          "column": 0
        },
        "end": {
          "line": 2,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Project",
      "start": 43,
      "end": 50,
      "loc": {
        "start": {
          "line": 2,
          "column": 7
        },
        "end": {
          "line": 2,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 51,
      "end": 55,
      "loc": {
        "start": {
          "line": 2,
          "column": 15
        },
        "end": {
          "line": 2,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./domain/Project",
      "start": 56,
      "end": 74,
      "loc": {
        "start": {
          "line": 2,
          "column": 20
        },
        "end": {
          "line": 2,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 74,
      "end": 75,
      "loc": {
        "start": {
          "line": 2,
          "column": 38
        },
        "end": {
          "line": 2,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 76,
      "end": 82,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BidFactory",
      "start": 83,
      "end": 93,
      "loc": {
        "start": {
          "line": 3,
          "column": 7
        },
        "end": {
          "line": 3,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 94,
      "end": 98,
      "loc": {
        "start": {
          "line": 3,
          "column": 18
        },
        "end": {
          "line": 3,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./domain/factories/BidFactory",
      "start": 99,
      "end": 130,
      "loc": {
        "start": {
          "line": 3,
          "column": 23
        },
        "end": {
          "line": 3,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 130,
      "end": 131,
      "loc": {
        "start": {
          "line": 3,
          "column": 54
        },
        "end": {
          "line": 3,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "import",
        "keyword": "import",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "import",
      "start": 132,
      "end": 138,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ProjectService",
      "start": 139,
      "end": 153,
      "loc": {
        "start": {
          "line": 4,
          "column": 7
        },
        "end": {
          "line": 4,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "from",
      "start": 154,
      "end": 158,
      "loc": {
        "start": {
          "line": 4,
          "column": 22
        },
        "end": {
          "line": 4,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./domain/services/ProjectService",
      "start": 159,
      "end": 193,
      "loc": {
        "start": {
          "line": 4,
          "column": 27
        },
        "end": {
          "line": 4,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 193,
      "end": 194,
      "loc": {
        "start": {
          "line": 4,
          "column": 61
        },
        "end": {
          "line": 4,
          "column": 62
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n * This class serves to quickly load a {@link Project} instance with included {@link Bid}s\n *\n * @class ProjectLoader\n ",
      "start": 196,
      "end": 321,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 10,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "export",
        "keyword": "export",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "export",
      "start": 322,
      "end": 328,
      "loc": {
        "start": {
          "line": 11,
          "column": 0
        },
        "end": {
          "line": 11,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "default",
        "keyword": "default",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "default",
      "start": 329,
      "end": 336,
      "loc": {
        "start": {
          "line": 11,
          "column": 7
        },
        "end": {
          "line": 11,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "class",
        "keyword": "class",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "class",
      "start": 337,
      "end": 342,
      "loc": {
        "start": {
          "line": 11,
          "column": 15
        },
        "end": {
          "line": 11,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ProjectLoader",
      "start": 343,
      "end": 356,
      "loc": {
        "start": {
          "line": 11,
          "column": 21
        },
        "end": {
          "line": 11,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 357,
      "end": 358,
      "loc": {
        "start": {
          "line": 11,
          "column": 35
        },
        "end": {
          "line": 11,
          "column": 36
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Creates an instance of ProjectLoader.\n   * @param {PVBidContext} pvbidContext\n   ",
      "start": 361,
      "end": 453,
      "loc": {
        "start": {
          "line": 12,
          "column": 2
        },
        "end": {
          "line": 15,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constructor",
      "start": 456,
      "end": 467,
      "loc": {
        "start": {
          "line": 16,
          "column": 2
        },
        "end": {
          "line": 16,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 467,
      "end": 468,
      "loc": {
        "start": {
          "line": 16,
          "column": 13
        },
        "end": {
          "line": 16,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pvbidContext",
      "start": 468,
      "end": 480,
      "loc": {
        "start": {
          "line": 16,
          "column": 14
        },
        "end": {
          "line": 16,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 480,
      "end": 481,
      "loc": {
        "start": {
          "line": 16,
          "column": 26
        },
        "end": {
          "line": 16,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 482,
      "end": 483,
      "loc": {
        "start": {
          "line": 16,
          "column": 28
        },
        "end": {
          "line": 16,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 488,
      "end": 492,
      "loc": {
        "start": {
          "line": 17,
          "column": 4
        },
        "end": {
          "line": 17,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 492,
      "end": 493,
      "loc": {
        "start": {
          "line": 17,
          "column": 8
        },
        "end": {
          "line": 17,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 493,
      "end": 500,
      "loc": {
        "start": {
          "line": 17,
          "column": 9
        },
        "end": {
          "line": 17,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 501,
      "end": 502,
      "loc": {
        "start": {
          "line": 17,
          "column": 17
        },
        "end": {
          "line": 17,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pvbidContext",
      "start": 503,
      "end": 515,
      "loc": {
        "start": {
          "line": 17,
          "column": 19
        },
        "end": {
          "line": 17,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 515,
      "end": 516,
      "loc": {
        "start": {
          "line": 17,
          "column": 31
        },
        "end": {
          "line": 17,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 519,
      "end": 520,
      "loc": {
        "start": {
          "line": 18,
          "column": 2
        },
        "end": {
          "line": 18,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Loads a project and bid instances.\n   *\n   * @param {number} projectId The id of the project to be loaded\n   * @param {object} options Loading options\n   * @param {boolean} [options.loadBidEntities=true] Determines if the bids should be loaded with their entities. They can be loaded later with bid.load() if\n   * @returns {Promise<Project>}\n   ",
      "start": 524,
      "end": 880,
      "loc": {
        "start": {
          "line": 20,
          "column": 2
        },
        "end": {
          "line": 27,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "async",
      "start": 883,
      "end": 888,
      "loc": {
        "start": {
          "line": 28,
          "column": 2
        },
        "end": {
          "line": 28,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "load",
      "start": 889,
      "end": 893,
      "loc": {
        "start": {
          "line": 28,
          "column": 8
        },
        "end": {
          "line": 28,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 893,
      "end": 894,
      "loc": {
        "start": {
          "line": 28,
          "column": 12
        },
        "end": {
          "line": 28,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectId",
      "start": 894,
      "end": 903,
      "loc": {
        "start": {
          "line": 28,
          "column": 13
        },
        "end": {
          "line": 28,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 903,
      "end": 904,
      "loc": {
        "start": {
          "line": 28,
          "column": 22
        },
        "end": {
          "line": 28,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 905,
      "end": 906,
      "loc": {
        "start": {
          "line": 28,
          "column": 24
        },
        "end": {
          "line": 28,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loadBidEntities",
      "start": 907,
      "end": 922,
      "loc": {
        "start": {
          "line": 28,
          "column": 26
        },
        "end": {
          "line": 28,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 923,
      "end": 924,
      "loc": {
        "start": {
          "line": 28,
          "column": 42
        },
        "end": {
          "line": 28,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 925,
      "end": 929,
      "loc": {
        "start": {
          "line": 28,
          "column": 44
        },
        "end": {
          "line": 28,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 930,
      "end": 931,
      "loc": {
        "start": {
          "line": 28,
          "column": 49
        },
        "end": {
          "line": 28,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 932,
      "end": 933,
      "loc": {
        "start": {
          "line": 28,
          "column": 51
        },
        "end": {
          "line": 28,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 934,
      "end": 935,
      "loc": {
        "start": {
          "line": 28,
          "column": 53
        },
        "end": {
          "line": 28,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 935,
      "end": 936,
      "loc": {
        "start": {
          "line": 28,
          "column": 54
        },
        "end": {
          "line": 28,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 936,
      "end": 937,
      "loc": {
        "start": {
          "line": 28,
          "column": 55
        },
        "end": {
          "line": 28,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 938,
      "end": 939,
      "loc": {
        "start": {
          "line": 28,
          "column": 57
        },
        "end": {
          "line": 28,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "try",
        "keyword": "try",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "try",
      "start": 944,
      "end": 947,
      "loc": {
        "start": {
          "line": 29,
          "column": 4
        },
        "end": {
          "line": 29,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 948,
      "end": 949,
      "loc": {
        "start": {
          "line": 29,
          "column": 8
        },
        "end": {
          "line": 29,
          "column": 9
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load project data",
      "start": 956,
      "end": 976,
      "loc": {
        "start": {
          "line": 30,
          "column": 6
        },
        "end": {
          "line": 30,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 983,
      "end": 988,
      "loc": {
        "start": {
          "line": 31,
          "column": 6
        },
        "end": {
          "line": 31,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectData",
      "start": 989,
      "end": 1000,
      "loc": {
        "start": {
          "line": 31,
          "column": 12
        },
        "end": {
          "line": 31,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1001,
      "end": 1002,
      "loc": {
        "start": {
          "line": 31,
          "column": 24
        },
        "end": {
          "line": 31,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "await",
      "start": 1003,
      "end": 1008,
      "loc": {
        "start": {
          "line": 31,
          "column": 26
        },
        "end": {
          "line": 31,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1009,
      "end": 1013,
      "loc": {
        "start": {
          "line": 31,
          "column": 32
        },
        "end": {
          "line": 31,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1013,
      "end": 1014,
      "loc": {
        "start": {
          "line": 31,
          "column": 36
        },
        "end": {
          "line": 31,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1014,
      "end": 1021,
      "loc": {
        "start": {
          "line": 31,
          "column": 37
        },
        "end": {
          "line": 31,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1021,
      "end": 1022,
      "loc": {
        "start": {
          "line": 31,
          "column": 44
        },
        "end": {
          "line": 31,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "repositories",
      "start": 1022,
      "end": 1034,
      "loc": {
        "start": {
          "line": 31,
          "column": 45
        },
        "end": {
          "line": 31,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1034,
      "end": 1035,
      "loc": {
        "start": {
          "line": 31,
          "column": 57
        },
        "end": {
          "line": 31,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projects",
      "start": 1035,
      "end": 1043,
      "loc": {
        "start": {
          "line": 31,
          "column": 58
        },
        "end": {
          "line": 31,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1043,
      "end": 1044,
      "loc": {
        "start": {
          "line": 31,
          "column": 66
        },
        "end": {
          "line": 31,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "findById",
      "start": 1044,
      "end": 1052,
      "loc": {
        "start": {
          "line": 31,
          "column": 67
        },
        "end": {
          "line": 31,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1052,
      "end": 1053,
      "loc": {
        "start": {
          "line": 31,
          "column": 75
        },
        "end": {
          "line": 31,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectId",
      "start": 1053,
      "end": 1062,
      "loc": {
        "start": {
          "line": 31,
          "column": 76
        },
        "end": {
          "line": 31,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1062,
      "end": 1063,
      "loc": {
        "start": {
          "line": 31,
          "column": 85
        },
        "end": {
          "line": 31,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1063,
      "end": 1064,
      "loc": {
        "start": {
          "line": 31,
          "column": 86
        },
        "end": {
          "line": 31,
          "column": 87
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " instantiate project and bids",
      "start": 1072,
      "end": 1103,
      "loc": {
        "start": {
          "line": 33,
          "column": 6
        },
        "end": {
          "line": 33,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 1110,
      "end": 1115,
      "loc": {
        "start": {
          "line": 34,
          "column": 6
        },
        "end": {
          "line": 34,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 1116,
      "end": 1123,
      "loc": {
        "start": {
          "line": 34,
          "column": 12
        },
        "end": {
          "line": 34,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1124,
      "end": 1125,
      "loc": {
        "start": {
          "line": 34,
          "column": 20
        },
        "end": {
          "line": 34,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1126,
      "end": 1129,
      "loc": {
        "start": {
          "line": 34,
          "column": 22
        },
        "end": {
          "line": 34,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Project",
      "start": 1130,
      "end": 1137,
      "loc": {
        "start": {
          "line": 34,
          "column": 26
        },
        "end": {
          "line": 34,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1137,
      "end": 1138,
      "loc": {
        "start": {
          "line": 34,
          "column": 33
        },
        "end": {
          "line": 34,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectData",
      "start": 1138,
      "end": 1149,
      "loc": {
        "start": {
          "line": 34,
          "column": 34
        },
        "end": {
          "line": 34,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1149,
      "end": 1150,
      "loc": {
        "start": {
          "line": 34,
          "column": 45
        },
        "end": {
          "line": 34,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1151,
      "end": 1154,
      "loc": {
        "start": {
          "line": 34,
          "column": 47
        },
        "end": {
          "line": 34,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ProjectService",
      "start": 1155,
      "end": 1169,
      "loc": {
        "start": {
          "line": 34,
          "column": 51
        },
        "end": {
          "line": 34,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1169,
      "end": 1170,
      "loc": {
        "start": {
          "line": 34,
          "column": 65
        },
        "end": {
          "line": 34,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1170,
      "end": 1174,
      "loc": {
        "start": {
          "line": 34,
          "column": 66
        },
        "end": {
          "line": 34,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1174,
      "end": 1175,
      "loc": {
        "start": {
          "line": 34,
          "column": 70
        },
        "end": {
          "line": 34,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1175,
      "end": 1182,
      "loc": {
        "start": {
          "line": 34,
          "column": 71
        },
        "end": {
          "line": 34,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1182,
      "end": 1183,
      "loc": {
        "start": {
          "line": 34,
          "column": 78
        },
        "end": {
          "line": 34,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1183,
      "end": 1184,
      "loc": {
        "start": {
          "line": 34,
          "column": 79
        },
        "end": {
          "line": 34,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1184,
      "end": 1185,
      "loc": {
        "start": {
          "line": 34,
          "column": 80
        },
        "end": {
          "line": 34,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectData",
      "start": 1192,
      "end": 1203,
      "loc": {
        "start": {
          "line": 35,
          "column": 6
        },
        "end": {
          "line": 35,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1203,
      "end": 1204,
      "loc": {
        "start": {
          "line": 35,
          "column": 17
        },
        "end": {
          "line": 35,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 1204,
      "end": 1208,
      "loc": {
        "start": {
          "line": 35,
          "column": 18
        },
        "end": {
          "line": 35,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1208,
      "end": 1209,
      "loc": {
        "start": {
          "line": 35,
          "column": 22
        },
        "end": {
          "line": 35,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "forEach",
      "start": 1209,
      "end": 1216,
      "loc": {
        "start": {
          "line": 35,
          "column": 23
        },
        "end": {
          "line": 35,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1216,
      "end": 1217,
      "loc": {
        "start": {
          "line": 35,
          "column": 30
        },
        "end": {
          "line": 35,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidData",
      "start": 1217,
      "end": 1224,
      "loc": {
        "start": {
          "line": 35,
          "column": 31
        },
        "end": {
          "line": 35,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1225,
      "end": 1227,
      "loc": {
        "start": {
          "line": 35,
          "column": 39
        },
        "end": {
          "line": 35,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1228,
      "end": 1229,
      "loc": {
        "start": {
          "line": 35,
          "column": 42
        },
        "end": {
          "line": 35,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 1238,
      "end": 1243,
      "loc": {
        "start": {
          "line": 36,
          "column": 8
        },
        "end": {
          "line": 36,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 1244,
      "end": 1247,
      "loc": {
        "start": {
          "line": 36,
          "column": 14
        },
        "end": {
          "line": 36,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1248,
      "end": 1249,
      "loc": {
        "start": {
          "line": 36,
          "column": 18
        },
        "end": {
          "line": 36,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 1250,
      "end": 1253,
      "loc": {
        "start": {
          "line": 36,
          "column": 20
        },
        "end": {
          "line": 36,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BidFactory",
      "start": 1254,
      "end": 1264,
      "loc": {
        "start": {
          "line": 36,
          "column": 24
        },
        "end": {
          "line": 36,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1264,
      "end": 1265,
      "loc": {
        "start": {
          "line": 36,
          "column": 34
        },
        "end": {
          "line": 36,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1265,
      "end": 1266,
      "loc": {
        "start": {
          "line": 36,
          "column": 35
        },
        "end": {
          "line": 36,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1266,
      "end": 1267,
      "loc": {
        "start": {
          "line": 36,
          "column": 36
        },
        "end": {
          "line": 36,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "create",
      "start": 1267,
      "end": 1273,
      "loc": {
        "start": {
          "line": 36,
          "column": 37
        },
        "end": {
          "line": 36,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1273,
      "end": 1274,
      "loc": {
        "start": {
          "line": 36,
          "column": 43
        },
        "end": {
          "line": 36,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidData",
      "start": 1274,
      "end": 1281,
      "loc": {
        "start": {
          "line": 36,
          "column": 44
        },
        "end": {
          "line": 36,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1281,
      "end": 1282,
      "loc": {
        "start": {
          "line": 36,
          "column": 51
        },
        "end": {
          "line": 36,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1283,
      "end": 1287,
      "loc": {
        "start": {
          "line": 36,
          "column": 53
        },
        "end": {
          "line": 36,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1287,
      "end": 1288,
      "loc": {
        "start": {
          "line": 36,
          "column": 57
        },
        "end": {
          "line": 36,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1288,
      "end": 1295,
      "loc": {
        "start": {
          "line": 36,
          "column": 58
        },
        "end": {
          "line": 36,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1295,
      "end": 1296,
      "loc": {
        "start": {
          "line": 36,
          "column": 65
        },
        "end": {
          "line": 36,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 1297,
      "end": 1304,
      "loc": {
        "start": {
          "line": 36,
          "column": 67
        },
        "end": {
          "line": 36,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1304,
      "end": 1305,
      "loc": {
        "start": {
          "line": 36,
          "column": 74
        },
        "end": {
          "line": 36,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1305,
      "end": 1306,
      "loc": {
        "start": {
          "line": 36,
          "column": 75
        },
        "end": {
          "line": 36,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 1315,
      "end": 1322,
      "loc": {
        "start": {
          "line": 37,
          "column": 8
        },
        "end": {
          "line": 37,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1322,
      "end": 1323,
      "loc": {
        "start": {
          "line": 37,
          "column": 15
        },
        "end": {
          "line": 37,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attachBid",
      "start": 1323,
      "end": 1332,
      "loc": {
        "start": {
          "line": 37,
          "column": 16
        },
        "end": {
          "line": 37,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1332,
      "end": 1333,
      "loc": {
        "start": {
          "line": 37,
          "column": 25
        },
        "end": {
          "line": 37,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 1333,
      "end": 1336,
      "loc": {
        "start": {
          "line": 37,
          "column": 26
        },
        "end": {
          "line": 37,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1336,
      "end": 1337,
      "loc": {
        "start": {
          "line": 37,
          "column": 29
        },
        "end": {
          "line": 37,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1337,
      "end": 1338,
      "loc": {
        "start": {
          "line": 37,
          "column": 30
        },
        "end": {
          "line": 37,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1345,
      "end": 1346,
      "loc": {
        "start": {
          "line": 38,
          "column": 6
        },
        "end": {
          "line": 38,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1346,
      "end": 1347,
      "loc": {
        "start": {
          "line": 38,
          "column": 7
        },
        "end": {
          "line": 38,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1347,
      "end": 1348,
      "loc": {
        "start": {
          "line": 38,
          "column": 8
        },
        "end": {
          "line": 38,
          "column": 9
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load bid data",
      "start": 1356,
      "end": 1372,
      "loc": {
        "start": {
          "line": 40,
          "column": 6
        },
        "end": {
          "line": 40,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1379,
      "end": 1381,
      "loc": {
        "start": {
          "line": 41,
          "column": 6
        },
        "end": {
          "line": 41,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1382,
      "end": 1383,
      "loc": {
        "start": {
          "line": 41,
          "column": 9
        },
        "end": {
          "line": 41,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loadBidEntities",
      "start": 1383,
      "end": 1398,
      "loc": {
        "start": {
          "line": 41,
          "column": 10
        },
        "end": {
          "line": 41,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1398,
      "end": 1399,
      "loc": {
        "start": {
          "line": 41,
          "column": 25
        },
        "end": {
          "line": 41,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1400,
      "end": 1401,
      "loc": {
        "start": {
          "line": 41,
          "column": 27
        },
        "end": {
          "line": 41,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 1410,
      "end": 1415,
      "loc": {
        "start": {
          "line": 42,
          "column": 8
        },
        "end": {
          "line": 42,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loadingPromises",
      "start": 1416,
      "end": 1431,
      "loc": {
        "start": {
          "line": 42,
          "column": 14
        },
        "end": {
          "line": 42,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1432,
      "end": 1433,
      "loc": {
        "start": {
          "line": 42,
          "column": 30
        },
        "end": {
          "line": 42,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 1434,
      "end": 1440,
      "loc": {
        "start": {
          "line": 42,
          "column": 32
        },
        "end": {
          "line": 42,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1440,
      "end": 1441,
      "loc": {
        "start": {
          "line": 42,
          "column": 38
        },
        "end": {
          "line": 42,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 1441,
      "end": 1447,
      "loc": {
        "start": {
          "line": 42,
          "column": 39
        },
        "end": {
          "line": 42,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1447,
      "end": 1448,
      "loc": {
        "start": {
          "line": 42,
          "column": 45
        },
        "end": {
          "line": 42,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 1448,
      "end": 1455,
      "loc": {
        "start": {
          "line": 42,
          "column": 46
        },
        "end": {
          "line": 42,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1455,
      "end": 1456,
      "loc": {
        "start": {
          "line": 42,
          "column": 53
        },
        "end": {
          "line": 42,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 1456,
      "end": 1460,
      "loc": {
        "start": {
          "line": 42,
          "column": 54
        },
        "end": {
          "line": 42,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1460,
      "end": 1461,
      "loc": {
        "start": {
          "line": 42,
          "column": 58
        },
        "end": {
          "line": 42,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1461,
      "end": 1462,
      "loc": {
        "start": {
          "line": 42,
          "column": 59
        },
        "end": {
          "line": 42,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 1462,
      "end": 1465,
      "loc": {
        "start": {
          "line": 42,
          "column": 60
        },
        "end": {
          "line": 42,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1465,
      "end": 1466,
      "loc": {
        "start": {
          "line": 42,
          "column": 63
        },
        "end": {
          "line": 42,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 1466,
      "end": 1469,
      "loc": {
        "start": {
          "line": 42,
          "column": 64
        },
        "end": {
          "line": 42,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1470,
      "end": 1472,
      "loc": {
        "start": {
          "line": 42,
          "column": 68
        },
        "end": {
          "line": 42,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 1473,
      "end": 1476,
      "loc": {
        "start": {
          "line": 42,
          "column": 71
        },
        "end": {
          "line": 42,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1476,
      "end": 1477,
      "loc": {
        "start": {
          "line": 42,
          "column": 74
        },
        "end": {
          "line": 42,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "load",
      "start": 1477,
      "end": 1481,
      "loc": {
        "start": {
          "line": 42,
          "column": 75
        },
        "end": {
          "line": 42,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1481,
      "end": 1482,
      "loc": {
        "start": {
          "line": 42,
          "column": 79
        },
        "end": {
          "line": 42,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1482,
      "end": 1483,
      "loc": {
        "start": {
          "line": 42,
          "column": 80
        },
        "end": {
          "line": 42,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "skipSave",
      "start": 1484,
      "end": 1492,
      "loc": {
        "start": {
          "line": 42,
          "column": 82
        },
        "end": {
          "line": 42,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1492,
      "end": 1493,
      "loc": {
        "start": {
          "line": 42,
          "column": 90
        },
        "end": {
          "line": 42,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "true",
        "keyword": "true",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "true",
      "start": 1494,
      "end": 1498,
      "loc": {
        "start": {
          "line": 42,
          "column": 92
        },
        "end": {
          "line": 42,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1499,
      "end": 1500,
      "loc": {
        "start": {
          "line": 42,
          "column": 97
        },
        "end": {
          "line": 42,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1500,
      "end": 1501,
      "loc": {
        "start": {
          "line": 42,
          "column": 98
        },
        "end": {
          "line": 42,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1501,
      "end": 1502,
      "loc": {
        "start": {
          "line": 42,
          "column": 99
        },
        "end": {
          "line": 42,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1502,
      "end": 1503,
      "loc": {
        "start": {
          "line": 42,
          "column": 100
        },
        "end": {
          "line": 42,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "await",
      "start": 1512,
      "end": 1517,
      "loc": {
        "start": {
          "line": 43,
          "column": 8
        },
        "end": {
          "line": 43,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Promise",
      "start": 1518,
      "end": 1525,
      "loc": {
        "start": {
          "line": 43,
          "column": 14
        },
        "end": {
          "line": 43,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1525,
      "end": 1526,
      "loc": {
        "start": {
          "line": 43,
          "column": 21
        },
        "end": {
          "line": 43,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "all",
      "start": 1526,
      "end": 1529,
      "loc": {
        "start": {
          "line": 43,
          "column": 22
        },
        "end": {
          "line": 43,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1529,
      "end": 1530,
      "loc": {
        "start": {
          "line": 43,
          "column": 25
        },
        "end": {
          "line": 43,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loadingPromises",
      "start": 1530,
      "end": 1545,
      "loc": {
        "start": {
          "line": 43,
          "column": 26
        },
        "end": {
          "line": 43,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1545,
      "end": 1546,
      "loc": {
        "start": {
          "line": 43,
          "column": 41
        },
        "end": {
          "line": 43,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1546,
      "end": 1547,
      "loc": {
        "start": {
          "line": 43,
          "column": 42
        },
        "end": {
          "line": 43,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1554,
      "end": 1555,
      "loc": {
        "start": {
          "line": 44,
          "column": 6
        },
        "end": {
          "line": 44,
          "column": 7
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load industry-wide predictions and line items if the user has access",
      "start": 1563,
      "end": 1634,
      "loc": {
        "start": {
          "line": 46,
          "column": 6
        },
        "end": {
          "line": 46,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 1641,
      "end": 1643,
      "loc": {
        "start": {
          "line": 47,
          "column": 6
        },
        "end": {
          "line": 47,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1644,
      "end": 1645,
      "loc": {
        "start": {
          "line": 47,
          "column": 9
        },
        "end": {
          "line": 47,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1645,
      "end": 1649,
      "loc": {
        "start": {
          "line": 47,
          "column": 10
        },
        "end": {
          "line": 47,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1649,
      "end": 1650,
      "loc": {
        "start": {
          "line": 47,
          "column": 14
        },
        "end": {
          "line": 47,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1650,
      "end": 1657,
      "loc": {
        "start": {
          "line": 47,
          "column": 15
        },
        "end": {
          "line": 47,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1657,
      "end": 1658,
      "loc": {
        "start": {
          "line": 47,
          "column": 22
        },
        "end": {
          "line": 47,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "user",
      "start": 1658,
      "end": 1662,
      "loc": {
        "start": {
          "line": 47,
          "column": 23
        },
        "end": {
          "line": 47,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 1663,
      "end": 1666,
      "loc": {
        "start": {
          "line": 47,
          "column": 28
        },
        "end": {
          "line": 47,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 1667,
      "end": 1676,
      "loc": {
        "start": {
          "line": 47,
          "column": 32
        },
        "end": {
          "line": 47,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 1677,
      "end": 1679,
      "loc": {
        "start": {
          "line": 47,
          "column": 42
        },
        "end": {
          "line": 47,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1680,
      "end": 1684,
      "loc": {
        "start": {
          "line": 47,
          "column": 45
        },
        "end": {
          "line": 47,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1684,
      "end": 1685,
      "loc": {
        "start": {
          "line": 47,
          "column": 49
        },
        "end": {
          "line": 47,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1685,
      "end": 1692,
      "loc": {
        "start": {
          "line": 47,
          "column": 50
        },
        "end": {
          "line": 47,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1692,
      "end": 1693,
      "loc": {
        "start": {
          "line": 47,
          "column": 57
        },
        "end": {
          "line": 47,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "user",
      "start": 1693,
      "end": 1697,
      "loc": {
        "start": {
          "line": 47,
          "column": 58
        },
        "end": {
          "line": 47,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1697,
      "end": 1698,
      "loc": {
        "start": {
          "line": 47,
          "column": 62
        },
        "end": {
          "line": 47,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_has_industry_wide_predictions",
      "start": 1698,
      "end": 1728,
      "loc": {
        "start": {
          "line": 47,
          "column": 63
        },
        "end": {
          "line": 47,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1728,
      "end": 1729,
      "loc": {
        "start": {
          "line": 47,
          "column": 93
        },
        "end": {
          "line": 47,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1730,
      "end": 1731,
      "loc": {
        "start": {
          "line": 47,
          "column": 95
        },
        "end": {
          "line": 47,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 1740,
      "end": 1745,
      "loc": {
        "start": {
          "line": 48,
          "column": 8
        },
        "end": {
          "line": 48,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "industryWidePredictionModels",
      "start": 1746,
      "end": 1774,
      "loc": {
        "start": {
          "line": 48,
          "column": 14
        },
        "end": {
          "line": 48,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1775,
      "end": 1776,
      "loc": {
        "start": {
          "line": 48,
          "column": 43
        },
        "end": {
          "line": 48,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "await",
      "start": 1777,
      "end": 1782,
      "loc": {
        "start": {
          "line": 48,
          "column": 45
        },
        "end": {
          "line": 48,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1783,
      "end": 1787,
      "loc": {
        "start": {
          "line": 48,
          "column": 51
        },
        "end": {
          "line": 48,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1787,
      "end": 1788,
      "loc": {
        "start": {
          "line": 48,
          "column": 55
        },
        "end": {
          "line": 48,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1788,
      "end": 1795,
      "loc": {
        "start": {
          "line": 48,
          "column": 56
        },
        "end": {
          "line": 48,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1795,
      "end": 1796,
      "loc": {
        "start": {
          "line": 48,
          "column": 63
        },
        "end": {
          "line": 48,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "repositories",
      "start": 1796,
      "end": 1808,
      "loc": {
        "start": {
          "line": 48,
          "column": 64
        },
        "end": {
          "line": 48,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1808,
      "end": 1809,
      "loc": {
        "start": {
          "line": 48,
          "column": 76
        },
        "end": {
          "line": 48,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "industryWidePredictionModels",
      "start": 1809,
      "end": 1837,
      "loc": {
        "start": {
          "line": 48,
          "column": 77
        },
        "end": {
          "line": 48,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1837,
      "end": 1838,
      "loc": {
        "start": {
          "line": 48,
          "column": 105
        },
        "end": {
          "line": 48,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 1838,
      "end": 1841,
      "loc": {
        "start": {
          "line": 48,
          "column": 106
        },
        "end": {
          "line": 48,
          "column": 109
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1841,
      "end": 1842,
      "loc": {
        "start": {
          "line": 48,
          "column": 109
        },
        "end": {
          "line": 48,
          "column": 110
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1842,
      "end": 1843,
      "loc": {
        "start": {
          "line": 48,
          "column": 110
        },
        "end": {
          "line": 48,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1843,
      "end": 1844,
      "loc": {
        "start": {
          "line": 48,
          "column": 111
        },
        "end": {
          "line": 48,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 1853,
      "end": 1860,
      "loc": {
        "start": {
          "line": 49,
          "column": 8
        },
        "end": {
          "line": 49,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1860,
      "end": 1861,
      "loc": {
        "start": {
          "line": 49,
          "column": 15
        },
        "end": {
          "line": 49,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "industryWidePredictionModels",
      "start": 1861,
      "end": 1889,
      "loc": {
        "start": {
          "line": 49,
          "column": 16
        },
        "end": {
          "line": 49,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1890,
      "end": 1891,
      "loc": {
        "start": {
          "line": 49,
          "column": 45
        },
        "end": {
          "line": 49,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "industryWidePredictionModels",
      "start": 1892,
      "end": 1920,
      "loc": {
        "start": {
          "line": 49,
          "column": 47
        },
        "end": {
          "line": 49,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1920,
      "end": 1921,
      "loc": {
        "start": {
          "line": 49,
          "column": 75
        },
        "end": {
          "line": 49,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 1930,
      "end": 1935,
      "loc": {
        "start": {
          "line": 50,
          "column": 8
        },
        "end": {
          "line": 50,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "lineItemDefs",
      "start": 1936,
      "end": 1948,
      "loc": {
        "start": {
          "line": 50,
          "column": 14
        },
        "end": {
          "line": 50,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 1949,
      "end": 1950,
      "loc": {
        "start": {
          "line": 50,
          "column": 27
        },
        "end": {
          "line": 50,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "await",
      "start": 1951,
      "end": 1956,
      "loc": {
        "start": {
          "line": 50,
          "column": 29
        },
        "end": {
          "line": 50,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 1957,
      "end": 1961,
      "loc": {
        "start": {
          "line": 50,
          "column": 35
        },
        "end": {
          "line": 50,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1961,
      "end": 1962,
      "loc": {
        "start": {
          "line": 50,
          "column": 39
        },
        "end": {
          "line": 50,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 1962,
      "end": 1969,
      "loc": {
        "start": {
          "line": 50,
          "column": 40
        },
        "end": {
          "line": 50,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1969,
      "end": 1970,
      "loc": {
        "start": {
          "line": 50,
          "column": 47
        },
        "end": {
          "line": 50,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "repositories",
      "start": 1970,
      "end": 1982,
      "loc": {
        "start": {
          "line": 50,
          "column": 48
        },
        "end": {
          "line": 50,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1982,
      "end": 1983,
      "loc": {
        "start": {
          "line": 50,
          "column": 60
        },
        "end": {
          "line": 50,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "lineItemDefs",
      "start": 1983,
      "end": 1995,
      "loc": {
        "start": {
          "line": 50,
          "column": 61
        },
        "end": {
          "line": 50,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1995,
      "end": 1996,
      "loc": {
        "start": {
          "line": 50,
          "column": 73
        },
        "end": {
          "line": 50,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 1996,
      "end": 1999,
      "loc": {
        "start": {
          "line": 50,
          "column": 74
        },
        "end": {
          "line": 50,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1999,
      "end": 2000,
      "loc": {
        "start": {
          "line": 50,
          "column": 77
        },
        "end": {
          "line": 50,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2000,
      "end": 2001,
      "loc": {
        "start": {
          "line": 50,
          "column": 78
        },
        "end": {
          "line": 50,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2001,
      "end": 2002,
      "loc": {
        "start": {
          "line": 50,
          "column": 79
        },
        "end": {
          "line": 50,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 2011,
      "end": 2018,
      "loc": {
        "start": {
          "line": 51,
          "column": 8
        },
        "end": {
          "line": 51,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2018,
      "end": 2019,
      "loc": {
        "start": {
          "line": 51,
          "column": 15
        },
        "end": {
          "line": 51,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "lineItemDefs",
      "start": 2019,
      "end": 2031,
      "loc": {
        "start": {
          "line": 51,
          "column": 16
        },
        "end": {
          "line": 51,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2032,
      "end": 2033,
      "loc": {
        "start": {
          "line": 51,
          "column": 29
        },
        "end": {
          "line": 51,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "lineItemDefs",
      "start": 2034,
      "end": 2046,
      "loc": {
        "start": {
          "line": 51,
          "column": 31
        },
        "end": {
          "line": 51,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2046,
      "end": 2047,
      "loc": {
        "start": {
          "line": 51,
          "column": 43
        },
        "end": {
          "line": 51,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2054,
      "end": 2055,
      "loc": {
        "start": {
          "line": 52,
          "column": 6
        },
        "end": {
          "line": 52,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 2063,
      "end": 2070,
      "loc": {
        "start": {
          "line": 54,
          "column": 6
        },
        "end": {
          "line": 54,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2070,
      "end": 2071,
      "loc": {
        "start": {
          "line": 54,
          "column": 13
        },
        "end": {
          "line": 54,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 2071,
      "end": 2075,
      "loc": {
        "start": {
          "line": 54,
          "column": 14
        },
        "end": {
          "line": 54,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2075,
      "end": 2076,
      "loc": {
        "start": {
          "line": 54,
          "column": 18
        },
        "end": {
          "line": 54,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2076,
      "end": 2077,
      "loc": {
        "start": {
          "line": 54,
          "column": 19
        },
        "end": {
          "line": 54,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2077,
      "end": 2078,
      "loc": {
        "start": {
          "line": 54,
          "column": 20
        },
        "end": {
          "line": 54,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2085,
      "end": 2091,
      "loc": {
        "start": {
          "line": 55,
          "column": 6
        },
        "end": {
          "line": 55,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 2092,
      "end": 2099,
      "loc": {
        "start": {
          "line": 55,
          "column": 13
        },
        "end": {
          "line": 55,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2099,
      "end": 2100,
      "loc": {
        "start": {
          "line": 55,
          "column": 20
        },
        "end": {
          "line": 55,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2105,
      "end": 2106,
      "loc": {
        "start": {
          "line": 56,
          "column": 4
        },
        "end": {
          "line": 56,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "catch",
        "keyword": "catch",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "catch",
      "start": 2107,
      "end": 2112,
      "loc": {
        "start": {
          "line": 56,
          "column": 6
        },
        "end": {
          "line": 56,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2113,
      "end": 2114,
      "loc": {
        "start": {
          "line": 56,
          "column": 12
        },
        "end": {
          "line": 56,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "error",
      "start": 2114,
      "end": 2119,
      "loc": {
        "start": {
          "line": 56,
          "column": 13
        },
        "end": {
          "line": 56,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2119,
      "end": 2120,
      "loc": {
        "start": {
          "line": 56,
          "column": 18
        },
        "end": {
          "line": 56,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2121,
      "end": 2122,
      "loc": {
        "start": {
          "line": 56,
          "column": 20
        },
        "end": {
          "line": 56,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 2129,
      "end": 2135,
      "loc": {
        "start": {
          "line": 57,
          "column": 6
        },
        "end": {
          "line": 57,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Promise",
      "start": 2136,
      "end": 2143,
      "loc": {
        "start": {
          "line": 57,
          "column": 13
        },
        "end": {
          "line": 57,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2143,
      "end": 2144,
      "loc": {
        "start": {
          "line": 57,
          "column": 20
        },
        "end": {
          "line": 57,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "reject",
      "start": 2144,
      "end": 2150,
      "loc": {
        "start": {
          "line": 57,
          "column": 21
        },
        "end": {
          "line": 57,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2150,
      "end": 2151,
      "loc": {
        "start": {
          "line": 57,
          "column": 27
        },
        "end": {
          "line": 57,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "error",
      "start": 2151,
      "end": 2156,
      "loc": {
        "start": {
          "line": 57,
          "column": 28
        },
        "end": {
          "line": 57,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2156,
      "end": 2157,
      "loc": {
        "start": {
          "line": 57,
          "column": 33
        },
        "end": {
          "line": 57,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2157,
      "end": 2158,
      "loc": {
        "start": {
          "line": 57,
          "column": 34
        },
        "end": {
          "line": 57,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2163,
      "end": 2164,
      "loc": {
        "start": {
          "line": 58,
          "column": 4
        },
        "end": {
          "line": 58,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2167,
      "end": 2168,
      "loc": {
        "start": {
          "line": 59,
          "column": 2
        },
        "end": {
          "line": 59,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Generate a new project instance based on the original data from the given project.\n   * For safety, any methods involving repositories or persistance are absent in the clone.\n   *\n   * @param {Project} project The project instance to make a virtual clone of.\n   * @param {number[]} bidIds Optionally limit the bids that get cloned into the virtual project clone by giving their IDs here.\n   * @return {Project}\n   ",
      "start": 2172,
      "end": 2597,
      "loc": {
        "start": {
          "line": 61,
          "column": 2
        },
        "end": {
          "line": 68,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "loadVirtualClone",
      "start": 2600,
      "end": 2616,
      "loc": {
        "start": {
          "line": 69,
          "column": 2
        },
        "end": {
          "line": 69,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2616,
      "end": 2617,
      "loc": {
        "start": {
          "line": 69,
          "column": 18
        },
        "end": {
          "line": 69,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 2617,
      "end": 2624,
      "loc": {
        "start": {
          "line": 69,
          "column": 19
        },
        "end": {
          "line": 69,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2624,
      "end": 2625,
      "loc": {
        "start": {
          "line": 69,
          "column": 26
        },
        "end": {
          "line": 69,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidIds",
      "start": 2626,
      "end": 2632,
      "loc": {
        "start": {
          "line": 69,
          "column": 28
        },
        "end": {
          "line": 69,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2633,
      "end": 2634,
      "loc": {
        "start": {
          "line": 69,
          "column": 35
        },
        "end": {
          "line": 69,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "null",
        "keyword": "null",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "null",
      "start": 2635,
      "end": 2639,
      "loc": {
        "start": {
          "line": 69,
          "column": 37
        },
        "end": {
          "line": 69,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2639,
      "end": 2640,
      "loc": {
        "start": {
          "line": 69,
          "column": 41
        },
        "end": {
          "line": 69,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2641,
      "end": 2642,
      "loc": {
        "start": {
          "line": 69,
          "column": 43
        },
        "end": {
          "line": 69,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 2647,
      "end": 2652,
      "loc": {
        "start": {
          "line": 70,
          "column": 4
        },
        "end": {
          "line": 70,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectData",
      "start": 2653,
      "end": 2664,
      "loc": {
        "start": {
          "line": 70,
          "column": 10
        },
        "end": {
          "line": 70,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2665,
      "end": 2666,
      "loc": {
        "start": {
          "line": 70,
          "column": 22
        },
        "end": {
          "line": 70,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "cloneDeep",
      "start": 2667,
      "end": 2676,
      "loc": {
        "start": {
          "line": 70,
          "column": 24
        },
        "end": {
          "line": 70,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2676,
      "end": 2677,
      "loc": {
        "start": {
          "line": 70,
          "column": 33
        },
        "end": {
          "line": 70,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 2677,
      "end": 2684,
      "loc": {
        "start": {
          "line": 70,
          "column": 34
        },
        "end": {
          "line": 70,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2684,
      "end": 2685,
      "loc": {
        "start": {
          "line": 70,
          "column": 41
        },
        "end": {
          "line": 70,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_original",
      "start": 2685,
      "end": 2694,
      "loc": {
        "start": {
          "line": 70,
          "column": 42
        },
        "end": {
          "line": 70,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2694,
      "end": 2695,
      "loc": {
        "start": {
          "line": 70,
          "column": 51
        },
        "end": {
          "line": 70,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2695,
      "end": 2696,
      "loc": {
        "start": {
          "line": 70,
          "column": 52
        },
        "end": {
          "line": 70,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 2701,
      "end": 2706,
      "loc": {
        "start": {
          "line": 71,
          "column": 4
        },
        "end": {
          "line": 71,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 2707,
      "end": 2721,
      "loc": {
        "start": {
          "line": 71,
          "column": 10
        },
        "end": {
          "line": 71,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2722,
      "end": 2723,
      "loc": {
        "start": {
          "line": 71,
          "column": 25
        },
        "end": {
          "line": 71,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 2724,
      "end": 2727,
      "loc": {
        "start": {
          "line": 71,
          "column": 27
        },
        "end": {
          "line": 71,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Project",
      "start": 2728,
      "end": 2735,
      "loc": {
        "start": {
          "line": 71,
          "column": 31
        },
        "end": {
          "line": 71,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2735,
      "end": 2736,
      "loc": {
        "start": {
          "line": 71,
          "column": 38
        },
        "end": {
          "line": 71,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "projectData",
      "start": 2736,
      "end": 2747,
      "loc": {
        "start": {
          "line": 71,
          "column": 39
        },
        "end": {
          "line": 71,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2747,
      "end": 2748,
      "loc": {
        "start": {
          "line": 71,
          "column": 50
        },
        "end": {
          "line": 71,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 2749,
      "end": 2752,
      "loc": {
        "start": {
          "line": 71,
          "column": 52
        },
        "end": {
          "line": 71,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "ProjectService",
      "start": 2753,
      "end": 2767,
      "loc": {
        "start": {
          "line": 71,
          "column": 56
        },
        "end": {
          "line": 71,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2767,
      "end": 2768,
      "loc": {
        "start": {
          "line": 71,
          "column": 70
        },
        "end": {
          "line": 71,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2768,
      "end": 2772,
      "loc": {
        "start": {
          "line": 71,
          "column": 71
        },
        "end": {
          "line": 71,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2772,
      "end": 2773,
      "loc": {
        "start": {
          "line": 71,
          "column": 75
        },
        "end": {
          "line": 71,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 2773,
      "end": 2780,
      "loc": {
        "start": {
          "line": 71,
          "column": 76
        },
        "end": {
          "line": 71,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2780,
      "end": 2781,
      "loc": {
        "start": {
          "line": 71,
          "column": 83
        },
        "end": {
          "line": 71,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2781,
      "end": 2782,
      "loc": {
        "start": {
          "line": 71,
          "column": 84
        },
        "end": {
          "line": 71,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2782,
      "end": 2783,
      "loc": {
        "start": {
          "line": 71,
          "column": 85
        },
        "end": {
          "line": 71,
          "column": 86
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove dangerous properties and methods that allow for persistance or repo access",
      "start": 2789,
      "end": 2873,
      "loc": {
        "start": {
          "line": 73,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 2878,
      "end": 2883,
      "loc": {
        "start": {
          "line": 74,
          "column": 4
        },
        "end": {
          "line": 74,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "dangerousMethods",
      "start": 2884,
      "end": 2900,
      "loc": {
        "start": {
          "line": 74,
          "column": 10
        },
        "end": {
          "line": 74,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2901,
      "end": 2902,
      "loc": {
        "start": {
          "line": 74,
          "column": 27
        },
        "end": {
          "line": 74,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2903,
      "end": 2904,
      "loc": {
        "start": {
          "line": 74,
          "column": 29
        },
        "end": {
          "line": 74,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "attachUser",
      "start": 2904,
      "end": 2916,
      "loc": {
        "start": {
          "line": 74,
          "column": 30
        },
        "end": {
          "line": 74,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2916,
      "end": 2917,
      "loc": {
        "start": {
          "line": 74,
          "column": 42
        },
        "end": {
          "line": 74,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "detachUser",
      "start": 2918,
      "end": 2930,
      "loc": {
        "start": {
          "line": 74,
          "column": 44
        },
        "end": {
          "line": 74,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2930,
      "end": 2931,
      "loc": {
        "start": {
          "line": 74,
          "column": 56
        },
        "end": {
          "line": 74,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "createBid",
      "start": 2932,
      "end": 2943,
      "loc": {
        "start": {
          "line": 74,
          "column": 58
        },
        "end": {
          "line": 74,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2943,
      "end": 2944,
      "loc": {
        "start": {
          "line": 74,
          "column": 69
        },
        "end": {
          "line": 74,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "save",
      "start": 2945,
      "end": 2951,
      "loc": {
        "start": {
          "line": 74,
          "column": 71
        },
        "end": {
          "line": 74,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2951,
      "end": 2952,
      "loc": {
        "start": {
          "line": 74,
          "column": 77
        },
        "end": {
          "line": 74,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "clone",
      "start": 2953,
      "end": 2960,
      "loc": {
        "start": {
          "line": 74,
          "column": 79
        },
        "end": {
          "line": 74,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2960,
      "end": 2961,
      "loc": {
        "start": {
          "line": 74,
          "column": 86
        },
        "end": {
          "line": 74,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2961,
      "end": 2962,
      "loc": {
        "start": {
          "line": 74,
          "column": 87
        },
        "end": {
          "line": 74,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "dangerousMethods",
      "start": 2967,
      "end": 2983,
      "loc": {
        "start": {
          "line": 75,
          "column": 4
        },
        "end": {
          "line": 75,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2983,
      "end": 2984,
      "loc": {
        "start": {
          "line": 75,
          "column": 20
        },
        "end": {
          "line": 75,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "forEach",
      "start": 2984,
      "end": 2991,
      "loc": {
        "start": {
          "line": 75,
          "column": 21
        },
        "end": {
          "line": 75,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2991,
      "end": 2992,
      "loc": {
        "start": {
          "line": 75,
          "column": 28
        },
        "end": {
          "line": 75,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "method",
      "start": 2992,
      "end": 2998,
      "loc": {
        "start": {
          "line": 75,
          "column": 29
        },
        "end": {
          "line": 75,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2999,
      "end": 3001,
      "loc": {
        "start": {
          "line": 75,
          "column": 36
        },
        "end": {
          "line": 75,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3002,
      "end": 3003,
      "loc": {
        "start": {
          "line": 75,
          "column": 39
        },
        "end": {
          "line": 75,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3010,
      "end": 3024,
      "loc": {
        "start": {
          "line": 76,
          "column": 6
        },
        "end": {
          "line": 76,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3024,
      "end": 3025,
      "loc": {
        "start": {
          "line": 76,
          "column": 20
        },
        "end": {
          "line": 76,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "method",
      "start": 3025,
      "end": 3031,
      "loc": {
        "start": {
          "line": 76,
          "column": 21
        },
        "end": {
          "line": 76,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3031,
      "end": 3032,
      "loc": {
        "start": {
          "line": 76,
          "column": 27
        },
        "end": {
          "line": 76,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3033,
      "end": 3034,
      "loc": {
        "start": {
          "line": 76,
          "column": 29
        },
        "end": {
          "line": 76,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 3035,
      "end": 3044,
      "loc": {
        "start": {
          "line": 76,
          "column": 31
        },
        "end": {
          "line": 76,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3044,
      "end": 3045,
      "loc": {
        "start": {
          "line": 76,
          "column": 40
        },
        "end": {
          "line": 76,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3050,
      "end": 3051,
      "loc": {
        "start": {
          "line": 77,
          "column": 4
        },
        "end": {
          "line": 77,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3051,
      "end": 3052,
      "loc": {
        "start": {
          "line": 77,
          "column": 5
        },
        "end": {
          "line": 77,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3052,
      "end": 3053,
      "loc": {
        "start": {
          "line": 77,
          "column": 6
        },
        "end": {
          "line": 77,
          "column": 7
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " load the bids",
      "start": 3059,
      "end": 3075,
      "loc": {
        "start": {
          "line": 79,
          "column": 4
        },
        "end": {
          "line": 79,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3080,
      "end": 3083,
      "loc": {
        "start": {
          "line": 80,
          "column": 4
        },
        "end": {
          "line": 80,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBids",
      "start": 3084,
      "end": 3096,
      "loc": {
        "start": {
          "line": 80,
          "column": 8
        },
        "end": {
          "line": 80,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3097,
      "end": 3098,
      "loc": {
        "start": {
          "line": 80,
          "column": 21
        },
        "end": {
          "line": 80,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidIds",
      "start": 3099,
      "end": 3105,
      "loc": {
        "start": {
          "line": 80,
          "column": 23
        },
        "end": {
          "line": 80,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3106,
      "end": 3107,
      "loc": {
        "start": {
          "line": 80,
          "column": 30
        },
        "end": {
          "line": 80,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidIds",
      "start": 3108,
      "end": 3114,
      "loc": {
        "start": {
          "line": 80,
          "column": 32
        },
        "end": {
          "line": 80,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3114,
      "end": 3115,
      "loc": {
        "start": {
          "line": 80,
          "column": 38
        },
        "end": {
          "line": 80,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 3115,
      "end": 3118,
      "loc": {
        "start": {
          "line": 80,
          "column": 39
        },
        "end": {
          "line": 80,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3118,
      "end": 3119,
      "loc": {
        "start": {
          "line": 80,
          "column": 42
        },
        "end": {
          "line": 80,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "id",
      "start": 3119,
      "end": 3121,
      "loc": {
        "start": {
          "line": 80,
          "column": 43
        },
        "end": {
          "line": 80,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3122,
      "end": 3124,
      "loc": {
        "start": {
          "line": 80,
          "column": 46
        },
        "end": {
          "line": 80,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 3125,
      "end": 3132,
      "loc": {
        "start": {
          "line": 80,
          "column": 49
        },
        "end": {
          "line": 80,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3132,
      "end": 3133,
      "loc": {
        "start": {
          "line": 80,
          "column": 56
        },
        "end": {
          "line": 80,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 3133,
      "end": 3137,
      "loc": {
        "start": {
          "line": 80,
          "column": 57
        },
        "end": {
          "line": 80,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3137,
      "end": 3138,
      "loc": {
        "start": {
          "line": 80,
          "column": 61
        },
        "end": {
          "line": 80,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "id",
      "start": 3138,
      "end": 3140,
      "loc": {
        "start": {
          "line": 80,
          "column": 62
        },
        "end": {
          "line": 80,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3140,
      "end": 3141,
      "loc": {
        "start": {
          "line": 80,
          "column": 64
        },
        "end": {
          "line": 80,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3141,
      "end": 3142,
      "loc": {
        "start": {
          "line": 80,
          "column": 65
        },
        "end": {
          "line": 80,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3143,
      "end": 3144,
      "loc": {
        "start": {
          "line": 80,
          "column": 67
        },
        "end": {
          "line": 80,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 3145,
      "end": 3151,
      "loc": {
        "start": {
          "line": 80,
          "column": 69
        },
        "end": {
          "line": 80,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3151,
      "end": 3152,
      "loc": {
        "start": {
          "line": 80,
          "column": 75
        },
        "end": {
          "line": 80,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 3152,
      "end": 3158,
      "loc": {
        "start": {
          "line": 80,
          "column": 76
        },
        "end": {
          "line": 80,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3158,
      "end": 3159,
      "loc": {
        "start": {
          "line": 80,
          "column": 82
        },
        "end": {
          "line": 80,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "project",
      "start": 3159,
      "end": 3166,
      "loc": {
        "start": {
          "line": 80,
          "column": 83
        },
        "end": {
          "line": 80,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3166,
      "end": 3167,
      "loc": {
        "start": {
          "line": 80,
          "column": 90
        },
        "end": {
          "line": 80,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 3167,
      "end": 3171,
      "loc": {
        "start": {
          "line": 80,
          "column": 91
        },
        "end": {
          "line": 80,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3171,
      "end": 3172,
      "loc": {
        "start": {
          "line": 80,
          "column": 95
        },
        "end": {
          "line": 80,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3172,
      "end": 3173,
      "loc": {
        "start": {
          "line": 80,
          "column": 96
        },
        "end": {
          "line": 80,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 3179,
      "end": 3184,
      "loc": {
        "start": {
          "line": 82,
          "column": 4
        },
        "end": {
          "line": 82,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 3185,
      "end": 3189,
      "loc": {
        "start": {
          "line": 82,
          "column": 10
        },
        "end": {
          "line": 82,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3190,
      "end": 3191,
      "loc": {
        "start": {
          "line": 82,
          "column": 15
        },
        "end": {
          "line": 82,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3192,
      "end": 3196,
      "loc": {
        "start": {
          "line": 82,
          "column": 17
        },
        "end": {
          "line": 82,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3196,
      "end": 3197,
      "loc": {
        "start": {
          "line": 82,
          "column": 21
        },
        "end": {
          "line": 82,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_loadVirtualBids",
      "start": 3197,
      "end": 3213,
      "loc": {
        "start": {
          "line": 82,
          "column": 22
        },
        "end": {
          "line": 82,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3213,
      "end": 3214,
      "loc": {
        "start": {
          "line": 82,
          "column": 38
        },
        "end": {
          "line": 82,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBids",
      "start": 3214,
      "end": 3226,
      "loc": {
        "start": {
          "line": 82,
          "column": 39
        },
        "end": {
          "line": 82,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3226,
      "end": 3227,
      "loc": {
        "start": {
          "line": 82,
          "column": 51
        },
        "end": {
          "line": 82,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3228,
      "end": 3242,
      "loc": {
        "start": {
          "line": 82,
          "column": 53
        },
        "end": {
          "line": 82,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3242,
      "end": 3243,
      "loc": {
        "start": {
          "line": 82,
          "column": 67
        },
        "end": {
          "line": 82,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3243,
      "end": 3244,
      "loc": {
        "start": {
          "line": 82,
          "column": 68
        },
        "end": {
          "line": 82,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 3249,
      "end": 3253,
      "loc": {
        "start": {
          "line": 83,
          "column": 4
        },
        "end": {
          "line": 83,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3253,
      "end": 3254,
      "loc": {
        "start": {
          "line": 83,
          "column": 8
        },
        "end": {
          "line": 83,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "forEach",
      "start": 3254,
      "end": 3261,
      "loc": {
        "start": {
          "line": 83,
          "column": 9
        },
        "end": {
          "line": 83,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3261,
      "end": 3262,
      "loc": {
        "start": {
          "line": 83,
          "column": 16
        },
        "end": {
          "line": 83,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 3262,
      "end": 3265,
      "loc": {
        "start": {
          "line": 83,
          "column": 17
        },
        "end": {
          "line": 83,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3266,
      "end": 3268,
      "loc": {
        "start": {
          "line": 83,
          "column": 21
        },
        "end": {
          "line": 83,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3269,
      "end": 3270,
      "loc": {
        "start": {
          "line": 83,
          "column": 24
        },
        "end": {
          "line": 83,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3277,
      "end": 3291,
      "loc": {
        "start": {
          "line": 84,
          "column": 6
        },
        "end": {
          "line": 84,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3291,
      "end": 3292,
      "loc": {
        "start": {
          "line": 84,
          "column": 20
        },
        "end": {
          "line": 84,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attachBid",
      "start": 3292,
      "end": 3301,
      "loc": {
        "start": {
          "line": 84,
          "column": 21
        },
        "end": {
          "line": 84,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3301,
      "end": 3302,
      "loc": {
        "start": {
          "line": 84,
          "column": 30
        },
        "end": {
          "line": 84,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 3302,
      "end": 3305,
      "loc": {
        "start": {
          "line": 84,
          "column": 31
        },
        "end": {
          "line": 84,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3305,
      "end": 3306,
      "loc": {
        "start": {
          "line": 84,
          "column": 34
        },
        "end": {
          "line": 84,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3306,
      "end": 3307,
      "loc": {
        "start": {
          "line": 84,
          "column": 35
        },
        "end": {
          "line": 84,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3312,
      "end": 3313,
      "loc": {
        "start": {
          "line": 85,
          "column": 4
        },
        "end": {
          "line": 85,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3313,
      "end": 3314,
      "loc": {
        "start": {
          "line": 85,
          "column": 5
        },
        "end": {
          "line": 85,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3314,
      "end": 3315,
      "loc": {
        "start": {
          "line": 85,
          "column": 6
        },
        "end": {
          "line": 85,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3321,
      "end": 3335,
      "loc": {
        "start": {
          "line": 87,
          "column": 4
        },
        "end": {
          "line": 87,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3335,
      "end": 3336,
      "loc": {
        "start": {
          "line": 87,
          "column": 18
        },
        "end": {
          "line": 87,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bind",
      "start": 3336,
      "end": 3340,
      "loc": {
        "start": {
          "line": 87,
          "column": 19
        },
        "end": {
          "line": 87,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3340,
      "end": 3341,
      "loc": {
        "start": {
          "line": 87,
          "column": 23
        },
        "end": {
          "line": 87,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3341,
      "end": 3342,
      "loc": {
        "start": {
          "line": 87,
          "column": 24
        },
        "end": {
          "line": 87,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3342,
      "end": 3343,
      "loc": {
        "start": {
          "line": 87,
          "column": 25
        },
        "end": {
          "line": 87,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 3348,
      "end": 3354,
      "loc": {
        "start": {
          "line": 88,
          "column": 4
        },
        "end": {
          "line": 88,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3355,
      "end": 3369,
      "loc": {
        "start": {
          "line": 88,
          "column": 11
        },
        "end": {
          "line": 88,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3369,
      "end": 3370,
      "loc": {
        "start": {
          "line": 88,
          "column": 25
        },
        "end": {
          "line": 88,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3373,
      "end": 3374,
      "loc": {
        "start": {
          "line": 89,
          "column": 2
        },
        "end": {
          "line": 89,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Generates virtual bid clones for the virtual project clone.\n   *\n   * @param {Bid[]} originalBids Bid instances from the original project\n   * @param {Project} virtualProject The virtual project clone to attach bid clones too\n   * @return {Bid[]} Clones of the given bids\n   ",
      "start": 3378,
      "end": 3664,
      "loc": {
        "start": {
          "line": 91,
          "column": 2
        },
        "end": {
          "line": 97,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_loadVirtualBids",
      "start": 3667,
      "end": 3683,
      "loc": {
        "start": {
          "line": 98,
          "column": 2
        },
        "end": {
          "line": 98,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3683,
      "end": 3684,
      "loc": {
        "start": {
          "line": 98,
          "column": 18
        },
        "end": {
          "line": 98,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBids",
      "start": 3684,
      "end": 3696,
      "loc": {
        "start": {
          "line": 98,
          "column": 19
        },
        "end": {
          "line": 98,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3696,
      "end": 3697,
      "loc": {
        "start": {
          "line": 98,
          "column": 31
        },
        "end": {
          "line": 98,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 3698,
      "end": 3712,
      "loc": {
        "start": {
          "line": 98,
          "column": 33
        },
        "end": {
          "line": 98,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3712,
      "end": 3713,
      "loc": {
        "start": {
          "line": 98,
          "column": 47
        },
        "end": {
          "line": 98,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3714,
      "end": 3715,
      "loc": {
        "start": {
          "line": 98,
          "column": 49
        },
        "end": {
          "line": 98,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "let",
        "keyword": "let",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "let",
      "start": 3720,
      "end": 3723,
      "loc": {
        "start": {
          "line": 99,
          "column": 4
        },
        "end": {
          "line": 99,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 3724,
      "end": 3728,
      "loc": {
        "start": {
          "line": 99,
          "column": 8
        },
        "end": {
          "line": 99,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3729,
      "end": 3730,
      "loc": {
        "start": {
          "line": 99,
          "column": 13
        },
        "end": {
          "line": 99,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3731,
      "end": 3732,
      "loc": {
        "start": {
          "line": 99,
          "column": 15
        },
        "end": {
          "line": 99,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3732,
      "end": 3733,
      "loc": {
        "start": {
          "line": 99,
          "column": 16
        },
        "end": {
          "line": 99,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3733,
      "end": 3734,
      "loc": {
        "start": {
          "line": 99,
          "column": 17
        },
        "end": {
          "line": 99,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 3739,
      "end": 3744,
      "loc": {
        "start": {
          "line": 100,
          "column": 4
        },
        "end": {
          "line": 100,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "dangerousMethods",
      "start": 3745,
      "end": 3761,
      "loc": {
        "start": {
          "line": 100,
          "column": 10
        },
        "end": {
          "line": 100,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3762,
      "end": 3763,
      "loc": {
        "start": {
          "line": 100,
          "column": 27
        },
        "end": {
          "line": 100,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3764,
      "end": 3765,
      "loc": {
        "start": {
          "line": 100,
          "column": 29
        },
        "end": {
          "line": 100,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "removeAssembly",
      "start": 3772,
      "end": 3788,
      "loc": {
        "start": {
          "line": 101,
          "column": 6
        },
        "end": {
          "line": 101,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3788,
      "end": 3789,
      "loc": {
        "start": {
          "line": 101,
          "column": 22
        },
        "end": {
          "line": 101,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "addAssemblies",
      "start": 3796,
      "end": 3811,
      "loc": {
        "start": {
          "line": 102,
          "column": 6
        },
        "end": {
          "line": 102,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3811,
      "end": 3812,
      "loc": {
        "start": {
          "line": 102,
          "column": 21
        },
        "end": {
          "line": 102,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "recover",
      "start": 3819,
      "end": 3828,
      "loc": {
        "start": {
          "line": 103,
          "column": 6
        },
        "end": {
          "line": 103,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3828,
      "end": 3829,
      "loc": {
        "start": {
          "line": 103,
          "column": 15
        },
        "end": {
          "line": 103,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "clone",
      "start": 3836,
      "end": 3843,
      "loc": {
        "start": {
          "line": 104,
          "column": 6
        },
        "end": {
          "line": 104,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3843,
      "end": 3844,
      "loc": {
        "start": {
          "line": 104,
          "column": 13
        },
        "end": {
          "line": 104,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "delete",
      "start": 3851,
      "end": 3859,
      "loc": {
        "start": {
          "line": 105,
          "column": 6
        },
        "end": {
          "line": 105,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3859,
      "end": 3860,
      "loc": {
        "start": {
          "line": 105,
          "column": 14
        },
        "end": {
          "line": 105,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "addLineItem",
      "start": 3867,
      "end": 3880,
      "loc": {
        "start": {
          "line": 106,
          "column": 6
        },
        "end": {
          "line": 106,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3880,
      "end": 3881,
      "loc": {
        "start": {
          "line": 106,
          "column": 19
        },
        "end": {
          "line": 106,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "addMetric",
      "start": 3888,
      "end": 3899,
      "loc": {
        "start": {
          "line": 107,
          "column": 6
        },
        "end": {
          "line": 107,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3899,
      "end": 3900,
      "loc": {
        "start": {
          "line": 107,
          "column": 17
        },
        "end": {
          "line": 107,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "addField",
      "start": 3907,
      "end": 3917,
      "loc": {
        "start": {
          "line": 108,
          "column": 6
        },
        "end": {
          "line": 108,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3917,
      "end": 3918,
      "loc": {
        "start": {
          "line": 108,
          "column": 16
        },
        "end": {
          "line": 108,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3923,
      "end": 3924,
      "loc": {
        "start": {
          "line": 109,
          "column": 4
        },
        "end": {
          "line": 109,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3924,
      "end": 3925,
      "loc": {
        "start": {
          "line": 109,
          "column": 5
        },
        "end": {
          "line": 109,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBids",
      "start": 3930,
      "end": 3942,
      "loc": {
        "start": {
          "line": 110,
          "column": 4
        },
        "end": {
          "line": 110,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3942,
      "end": 3943,
      "loc": {
        "start": {
          "line": 110,
          "column": 16
        },
        "end": {
          "line": 110,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "forEach",
      "start": 3943,
      "end": 3950,
      "loc": {
        "start": {
          "line": 110,
          "column": 17
        },
        "end": {
          "line": 110,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3950,
      "end": 3951,
      "loc": {
        "start": {
          "line": 110,
          "column": 24
        },
        "end": {
          "line": 110,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBid",
      "start": 3951,
      "end": 3962,
      "loc": {
        "start": {
          "line": 110,
          "column": 25
        },
        "end": {
          "line": 110,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3963,
      "end": 3965,
      "loc": {
        "start": {
          "line": 110,
          "column": 37
        },
        "end": {
          "line": 110,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3966,
      "end": 3967,
      "loc": {
        "start": {
          "line": 110,
          "column": 40
        },
        "end": {
          "line": 110,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 3974,
      "end": 3979,
      "loc": {
        "start": {
          "line": 111,
          "column": 6
        },
        "end": {
          "line": 111,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidObject",
      "start": 3980,
      "end": 3989,
      "loc": {
        "start": {
          "line": 111,
          "column": 12
        },
        "end": {
          "line": 111,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3990,
      "end": 3991,
      "loc": {
        "start": {
          "line": 111,
          "column": 22
        },
        "end": {
          "line": 111,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "originalBid",
      "start": 3992,
      "end": 4003,
      "loc": {
        "start": {
          "line": 111,
          "column": 24
        },
        "end": {
          "line": 111,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4003,
      "end": 4004,
      "loc": {
        "start": {
          "line": 111,
          "column": 35
        },
        "end": {
          "line": 111,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "exportDataWithEntities",
      "start": 4004,
      "end": 4026,
      "loc": {
        "start": {
          "line": 111,
          "column": 36
        },
        "end": {
          "line": 111,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4026,
      "end": 4027,
      "loc": {
        "start": {
          "line": 111,
          "column": 58
        },
        "end": {
          "line": 111,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4027,
      "end": 4028,
      "loc": {
        "start": {
          "line": 111,
          "column": 59
        },
        "end": {
          "line": 111,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4028,
      "end": 4029,
      "loc": {
        "start": {
          "line": 111,
          "column": 60
        },
        "end": {
          "line": 111,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "const",
        "keyword": "const",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "const",
      "start": 4036,
      "end": 4041,
      "loc": {
        "start": {
          "line": 112,
          "column": 6
        },
        "end": {
          "line": 112,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 4042,
      "end": 4045,
      "loc": {
        "start": {
          "line": 112,
          "column": 12
        },
        "end": {
          "line": 112,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4046,
      "end": 4047,
      "loc": {
        "start": {
          "line": 112,
          "column": 16
        },
        "end": {
          "line": 112,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "new",
        "keyword": "new",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "new",
      "start": 4048,
      "end": 4051,
      "loc": {
        "start": {
          "line": 112,
          "column": 18
        },
        "end": {
          "line": 112,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BidFactory",
      "start": 4052,
      "end": 4062,
      "loc": {
        "start": {
          "line": 112,
          "column": 22
        },
        "end": {
          "line": 112,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4062,
      "end": 4063,
      "loc": {
        "start": {
          "line": 112,
          "column": 32
        },
        "end": {
          "line": 112,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4063,
      "end": 4064,
      "loc": {
        "start": {
          "line": 112,
          "column": 33
        },
        "end": {
          "line": 112,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4064,
      "end": 4065,
      "loc": {
        "start": {
          "line": 112,
          "column": 34
        },
        "end": {
          "line": 112,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "create",
      "start": 4065,
      "end": 4071,
      "loc": {
        "start": {
          "line": 112,
          "column": 35
        },
        "end": {
          "line": 112,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4071,
      "end": 4072,
      "loc": {
        "start": {
          "line": 112,
          "column": 41
        },
        "end": {
          "line": 112,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bidObject",
      "start": 4072,
      "end": 4081,
      "loc": {
        "start": {
          "line": 112,
          "column": 42
        },
        "end": {
          "line": 112,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4081,
      "end": 4082,
      "loc": {
        "start": {
          "line": 112,
          "column": 51
        },
        "end": {
          "line": 112,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4083,
      "end": 4087,
      "loc": {
        "start": {
          "line": 112,
          "column": 53
        },
        "end": {
          "line": 112,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4087,
      "end": 4088,
      "loc": {
        "start": {
          "line": 112,
          "column": 57
        },
        "end": {
          "line": 112,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "context",
      "start": 4088,
      "end": 4095,
      "loc": {
        "start": {
          "line": 112,
          "column": 58
        },
        "end": {
          "line": 112,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4095,
      "end": 4096,
      "loc": {
        "start": {
          "line": 112,
          "column": 65
        },
        "end": {
          "line": 112,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "virtualProject",
      "start": 4097,
      "end": 4111,
      "loc": {
        "start": {
          "line": 112,
          "column": 67
        },
        "end": {
          "line": 112,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4111,
      "end": 4112,
      "loc": {
        "start": {
          "line": 112,
          "column": 81
        },
        "end": {
          "line": 112,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4112,
      "end": 4113,
      "loc": {
        "start": {
          "line": 112,
          "column": 82
        },
        "end": {
          "line": 112,
          "column": 83
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove dangerous methods from the bid (dangerous methods involve repositories and persistance)",
      "start": 4121,
      "end": 4218,
      "loc": {
        "start": {
          "line": 114,
          "column": 6
        },
        "end": {
          "line": 114,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "dangerousMethods",
      "start": 4225,
      "end": 4241,
      "loc": {
        "start": {
          "line": 115,
          "column": 6
        },
        "end": {
          "line": 115,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4241,
      "end": 4242,
      "loc": {
        "start": {
          "line": 115,
          "column": 22
        },
        "end": {
          "line": 115,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "forEach",
      "start": 4242,
      "end": 4249,
      "loc": {
        "start": {
          "line": 115,
          "column": 23
        },
        "end": {
          "line": 115,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4249,
      "end": 4250,
      "loc": {
        "start": {
          "line": 115,
          "column": 30
        },
        "end": {
          "line": 115,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "method",
      "start": 4250,
      "end": 4256,
      "loc": {
        "start": {
          "line": 115,
          "column": 31
        },
        "end": {
          "line": 115,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4257,
      "end": 4259,
      "loc": {
        "start": {
          "line": 115,
          "column": 38
        },
        "end": {
          "line": 115,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4260,
      "end": 4261,
      "loc": {
        "start": {
          "line": 115,
          "column": 41
        },
        "end": {
          "line": 115,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 4270,
      "end": 4273,
      "loc": {
        "start": {
          "line": 116,
          "column": 8
        },
        "end": {
          "line": 116,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4273,
      "end": 4274,
      "loc": {
        "start": {
          "line": 116,
          "column": 11
        },
        "end": {
          "line": 116,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "method",
      "start": 4274,
      "end": 4280,
      "loc": {
        "start": {
          "line": 116,
          "column": 12
        },
        "end": {
          "line": 116,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4280,
      "end": 4281,
      "loc": {
        "start": {
          "line": 116,
          "column": 18
        },
        "end": {
          "line": 116,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4282,
      "end": 4283,
      "loc": {
        "start": {
          "line": 116,
          "column": 20
        },
        "end": {
          "line": 116,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 4284,
      "end": 4293,
      "loc": {
        "start": {
          "line": 116,
          "column": 22
        },
        "end": {
          "line": 116,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4293,
      "end": 4294,
      "loc": {
        "start": {
          "line": 116,
          "column": 31
        },
        "end": {
          "line": 116,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4301,
      "end": 4302,
      "loc": {
        "start": {
          "line": 117,
          "column": 6
        },
        "end": {
          "line": 117,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4302,
      "end": 4303,
      "loc": {
        "start": {
          "line": 117,
          "column": 7
        },
        "end": {
          "line": 117,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4303,
      "end": 4304,
      "loc": {
        "start": {
          "line": 117,
          "column": 8
        },
        "end": {
          "line": 117,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 4312,
      "end": 4316,
      "loc": {
        "start": {
          "line": 119,
          "column": 6
        },
        "end": {
          "line": 119,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4316,
      "end": 4317,
      "loc": {
        "start": {
          "line": 119,
          "column": 10
        },
        "end": {
          "line": 119,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 4317,
      "end": 4321,
      "loc": {
        "start": {
          "line": 119,
          "column": 11
        },
        "end": {
          "line": 119,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4321,
      "end": 4322,
      "loc": {
        "start": {
          "line": 119,
          "column": 15
        },
        "end": {
          "line": 119,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bid",
      "start": 4322,
      "end": 4325,
      "loc": {
        "start": {
          "line": 119,
          "column": 16
        },
        "end": {
          "line": 119,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4325,
      "end": 4326,
      "loc": {
        "start": {
          "line": 119,
          "column": 19
        },
        "end": {
          "line": 119,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4326,
      "end": 4327,
      "loc": {
        "start": {
          "line": 119,
          "column": 20
        },
        "end": {
          "line": 119,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4332,
      "end": 4333,
      "loc": {
        "start": {
          "line": 120,
          "column": 4
        },
        "end": {
          "line": 120,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4333,
      "end": 4334,
      "loc": {
        "start": {
          "line": 120,
          "column": 5
        },
        "end": {
          "line": 120,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4334,
      "end": 4335,
      "loc": {
        "start": {
          "line": 120,
          "column": 6
        },
        "end": {
          "line": 120,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "return",
        "keyword": "return",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "return",
      "start": 4340,
      "end": 4346,
      "loc": {
        "start": {
          "line": 121,
          "column": 4
        },
        "end": {
          "line": 121,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bids",
      "start": 4347,
      "end": 4351,
      "loc": {
        "start": {
          "line": 121,
          "column": 11
        },
        "end": {
          "line": 121,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4351,
      "end": 4352,
      "loc": {
        "start": {
          "line": 121,
          "column": 15
        },
        "end": {
          "line": 121,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4355,
      "end": 4356,
      "loc": {
        "start": {
          "line": 122,
          "column": 2
        },
        "end": {
          "line": 122,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4357,
      "end": 4358,
      "loc": {
        "start": {
          "line": 123,
          "column": 0
        },
        "end": {
          "line": 123,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4359,
      "end": 4359,
      "loc": {
        "start": {
          "line": 124,
          "column": 0
        },
        "end": {
          "line": 124,
          "column": 0
        }
      }
    }
  ]
}