{
  "type": "File",
  "start": 0,
  "end": 26839,
  "loc": {
    "start": {
      "line": 1,
      "column": 0
    },
    "end": {
      "line": 732,
      "column": 0
    }
  },
  "program": {
    "type": "Program",
    "start": 0,
    "end": 26839,
    "loc": {
      "start": {
        "line": 1,
        "column": 0
      },
      "end": {
        "line": 732,
        "column": 0
      }
    },
    "sourceType": "module",
    "body": [
      {
        "type": "VariableDeclaration",
        "start": 15,
        "end": 51,
        "loc": {
          "start": {
            "line": 3,
            "column": 0
          },
          "end": {
            "line": 3,
            "column": 36
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 21,
            "end": 50,
            "loc": {
              "start": {
                "line": 3,
                "column": 6
              },
              "end": {
                "line": 3,
                "column": 35
              }
            },
            "id": {
              "type": "Identifier",
              "start": 21,
              "end": 26,
              "loc": {
                "start": {
                  "line": 3,
                  "column": 6
                },
                "end": {
                  "line": 3,
                  "column": 11
                },
                "identifierName": "Utils"
              },
              "name": "Utils"
            },
            "init": {
              "type": "CallExpression",
              "start": 29,
              "end": 50,
              "loc": {
                "start": {
                  "line": 3,
                  "column": 14
                },
                "end": {
                  "line": 3,
                  "column": 35
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 29,
                "end": 36,
                "loc": {
                  "start": {
                    "line": 3,
                    "column": 14
                  },
                  "end": {
                    "line": 3,
                    "column": 21
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 37,
                  "end": 49,
                  "loc": {
                    "start": {
                      "line": 3,
                      "column": 22
                    },
                    "end": {
                      "line": 3,
                      "column": 34
                    }
                  },
                  "extra": {
                    "rawValue": "./../utils",
                    "raw": "'./../utils'"
                  },
                  "value": "./../utils"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 52,
        "end": 89,
        "loc": {
          "start": {
            "line": 4,
            "column": 0
          },
          "end": {
            "line": 4,
            "column": 37
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 58,
            "end": 88,
            "loc": {
              "start": {
                "line": 4,
                "column": 6
              },
              "end": {
                "line": 4,
                "column": 36
              }
            },
            "id": {
              "type": "Identifier",
              "start": 58,
              "end": 65,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 6
                },
                "end": {
                  "line": 4,
                  "column": 13
                },
                "identifierName": "Helpers"
              },
              "name": "Helpers"
            },
            "init": {
              "type": "CallExpression",
              "start": 68,
              "end": 88,
              "loc": {
                "start": {
                  "line": 4,
                  "column": 16
                },
                "end": {
                  "line": 4,
                  "column": 36
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 68,
                "end": 75,
                "loc": {
                  "start": {
                    "line": 4,
                    "column": 16
                  },
                  "end": {
                    "line": 4,
                    "column": 23
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 76,
                  "end": 87,
                  "loc": {
                    "start": {
                      "line": 4,
                      "column": 24
                    },
                    "end": {
                      "line": 4,
                      "column": 35
                    }
                  },
                  "extra": {
                    "rawValue": "./helpers",
                    "raw": "'./helpers'"
                  },
                  "value": "./helpers"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 90,
        "end": 118,
        "loc": {
          "start": {
            "line": 5,
            "column": 0
          },
          "end": {
            "line": 5,
            "column": 28
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 96,
            "end": 117,
            "loc": {
              "start": {
                "line": 5,
                "column": 6
              },
              "end": {
                "line": 5,
                "column": 27
              }
            },
            "id": {
              "type": "Identifier",
              "start": 96,
              "end": 97,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 6
                },
                "end": {
                  "line": 5,
                  "column": 7
                },
                "identifierName": "_"
              },
              "name": "_"
            },
            "init": {
              "type": "CallExpression",
              "start": 100,
              "end": 117,
              "loc": {
                "start": {
                  "line": 5,
                  "column": 10
                },
                "end": {
                  "line": 5,
                  "column": 27
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 100,
                "end": 107,
                "loc": {
                  "start": {
                    "line": 5,
                    "column": 10
                  },
                  "end": {
                    "line": 5,
                    "column": 17
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 108,
                  "end": 116,
                  "loc": {
                    "start": {
                      "line": 5,
                      "column": 18
                    },
                    "end": {
                      "line": 5,
                      "column": 26
                    }
                  },
                  "extra": {
                    "rawValue": "lodash",
                    "raw": "'lodash'"
                  },
                  "value": "lodash"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 119,
        "end": 157,
        "loc": {
          "start": {
            "line": 6,
            "column": 0
          },
          "end": {
            "line": 6,
            "column": 38
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 125,
            "end": 156,
            "loc": {
              "start": {
                "line": 6,
                "column": 6
              },
              "end": {
                "line": 6,
                "column": 37
              }
            },
            "id": {
              "type": "Identifier",
              "start": 125,
              "end": 136,
              "loc": {
                "start": {
                  "line": 6,
                  "column": 6
                },
                "end": {
                  "line": 6,
                  "column": 17
                },
                "identifierName": "Association"
              },
              "name": "Association"
            },
            "init": {
              "type": "CallExpression",
              "start": 139,
              "end": 156,
              "loc": {
                "start": {
                  "line": 6,
                  "column": 20
                },
                "end": {
                  "line": 6,
                  "column": 37
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 139,
                "end": 146,
                "loc": {
                  "start": {
                    "line": 6,
                    "column": 20
                  },
                  "end": {
                    "line": 6,
                    "column": 27
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 147,
                  "end": 155,
                  "loc": {
                    "start": {
                      "line": 6,
                      "column": 28
                    },
                    "end": {
                      "line": 6,
                      "column": 36
                    }
                  },
                  "extra": {
                    "rawValue": "./base",
                    "raw": "'./base'"
                  },
                  "value": "./base"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 158,
        "end": 200,
        "loc": {
          "start": {
            "line": 7,
            "column": 0
          },
          "end": {
            "line": 7,
            "column": 42
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 164,
            "end": 199,
            "loc": {
              "start": {
                "line": 7,
                "column": 6
              },
              "end": {
                "line": 7,
                "column": 41
              }
            },
            "id": {
              "type": "Identifier",
              "start": 164,
              "end": 173,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 6
                },
                "end": {
                  "line": 7,
                  "column": 15
                },
                "identifierName": "BelongsTo"
              },
              "name": "BelongsTo"
            },
            "init": {
              "type": "CallExpression",
              "start": 176,
              "end": 199,
              "loc": {
                "start": {
                  "line": 7,
                  "column": 18
                },
                "end": {
                  "line": 7,
                  "column": 41
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 176,
                "end": 183,
                "loc": {
                  "start": {
                    "line": 7,
                    "column": 18
                  },
                  "end": {
                    "line": 7,
                    "column": 25
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 184,
                  "end": 198,
                  "loc": {
                    "start": {
                      "line": 7,
                      "column": 26
                    },
                    "end": {
                      "line": 7,
                      "column": 40
                    }
                  },
                  "extra": {
                    "rawValue": "./belongs-to",
                    "raw": "'./belongs-to'"
                  },
                  "value": "./belongs-to"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 201,
        "end": 239,
        "loc": {
          "start": {
            "line": 8,
            "column": 0
          },
          "end": {
            "line": 8,
            "column": 38
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 207,
            "end": 238,
            "loc": {
              "start": {
                "line": 8,
                "column": 6
              },
              "end": {
                "line": 8,
                "column": 37
              }
            },
            "id": {
              "type": "Identifier",
              "start": 207,
              "end": 214,
              "loc": {
                "start": {
                  "line": 8,
                  "column": 6
                },
                "end": {
                  "line": 8,
                  "column": 13
                },
                "identifierName": "HasMany"
              },
              "name": "HasMany"
            },
            "init": {
              "type": "CallExpression",
              "start": 217,
              "end": 238,
              "loc": {
                "start": {
                  "line": 8,
                  "column": 16
                },
                "end": {
                  "line": 8,
                  "column": 37
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 217,
                "end": 224,
                "loc": {
                  "start": {
                    "line": 8,
                    "column": 16
                  },
                  "end": {
                    "line": 8,
                    "column": 23
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 225,
                  "end": 237,
                  "loc": {
                    "start": {
                      "line": 8,
                      "column": 24
                    },
                    "end": {
                      "line": 8,
                      "column": 36
                    }
                  },
                  "extra": {
                    "rawValue": "./has-many",
                    "raw": "'./has-many'"
                  },
                  "value": "./has-many"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 240,
        "end": 276,
        "loc": {
          "start": {
            "line": 9,
            "column": 0
          },
          "end": {
            "line": 9,
            "column": 36
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 246,
            "end": 275,
            "loc": {
              "start": {
                "line": 9,
                "column": 6
              },
              "end": {
                "line": 9,
                "column": 35
              }
            },
            "id": {
              "type": "Identifier",
              "start": 246,
              "end": 252,
              "loc": {
                "start": {
                  "line": 9,
                  "column": 6
                },
                "end": {
                  "line": 9,
                  "column": 12
                },
                "identifierName": "HasOne"
              },
              "name": "HasOne"
            },
            "init": {
              "type": "CallExpression",
              "start": 255,
              "end": 275,
              "loc": {
                "start": {
                  "line": 9,
                  "column": 15
                },
                "end": {
                  "line": 9,
                  "column": 35
                }
              },
              "callee": {
                "type": "Identifier",
                "start": 255,
                "end": 262,
                "loc": {
                  "start": {
                    "line": 9,
                    "column": 15
                  },
                  "end": {
                    "line": 9,
                    "column": 22
                  },
                  "identifierName": "require"
                },
                "name": "require"
              },
              "arguments": [
                {
                  "type": "StringLiteral",
                  "start": 263,
                  "end": 274,
                  "loc": {
                    "start": {
                      "line": 9,
                      "column": 23
                    },
                    "end": {
                      "line": 9,
                      "column": 34
                    }
                  },
                  "extra": {
                    "rawValue": "./has-one",
                    "raw": "'./has-one'"
                  },
                  "value": "./has-one"
                }
              ]
            }
          }
        ],
        "kind": "const"
      },
      {
        "type": "VariableDeclaration",
        "start": 277,
        "end": 340,
        "loc": {
          "start": {
            "line": 10,
            "column": 0
          },
          "end": {
            "line": 10,
            "column": 63
          }
        },
        "declarations": [
          {
            "type": "VariableDeclarator",
            "start": 283,
            "end": 339,
            "loc": {
              "start": {
                "line": 10,
                "column": 6
              },
              "end": {
                "line": 10,
                "column": 62
              }
            },
            "id": {
              "type": "Identifier",
              "start": 283,
              "end": 299,
              "loc": {
                "start": {
                  "line": 10,
                  "column": 6
                },
                "end": {
                  "line": 10,
                  "column": 22
                },
                "identifierName": "AssociationError"
              },
              "name": "AssociationError"
            },
            "init": {
              "type": "MemberExpression",
              "start": 302,
              "end": 339,
              "loc": {
                "start": {
                  "line": 10,
                  "column": 25
                },
                "end": {
                  "line": 10,
                  "column": 62
                }
              },
              "object": {
                "type": "CallExpression",
                "start": 302,
                "end": 322,
                "loc": {
                  "start": {
                    "line": 10,
                    "column": 25
                  },
                  "end": {
                    "line": 10,
                    "column": 45
                  }
                },
                "callee": {
                  "type": "Identifier",
                  "start": 302,
                  "end": 309,
                  "loc": {
                    "start": {
                      "line": 10,
                      "column": 25
                    },
                    "end": {
                      "line": 10,
                      "column": 32
                    },
                    "identifierName": "require"
                  },
                  "name": "require"
                },
                "arguments": [
                  {
                    "type": "StringLiteral",
                    "start": 310,
                    "end": 321,
                    "loc": {
                      "start": {
                        "line": 10,
                        "column": 33
                      },
                      "end": {
                        "line": 10,
                        "column": 44
                      }
                    },
                    "extra": {
                      "rawValue": "../errors",
                      "raw": "'../errors'"
                    },
                    "value": "../errors"
                  }
                ]
              },
              "property": {
                "type": "Identifier",
                "start": 323,
                "end": 339,
                "loc": {
                  "start": {
                    "line": 10,
                    "column": 46
                  },
                  "end": {
                    "line": 10,
                    "column": 62
                  },
                  "identifierName": "AssociationError"
                },
                "name": "AssociationError"
              },
              "computed": false
            }
          }
        ],
        "kind": "const",
        "trailingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * Many-to-many association with a join table.\n *\n * When the join table has additional attributes, these can be passed in the options object:\n *\n * ```js\n * UserProject = sequelize.define('user_project', {\n *   role: Sequelize.STRING\n * });\n * User.belongsToMany(Project, { through: UserProject });\n * Project.belongsToMany(User, { through: UserProject });\n * // through is required!\n *\n * user.addProject(project, { through: { role: 'manager' }});\n * ```\n *\n * All methods allow you to pass either a persisted instance, its primary key, or a mixture:\n *\n * ```js\n * Project.create({ id: 11 }).then(function (project) {\n *   user.addProjects([project, 12]);\n * });\n * ```\n *\n * If you want to set several target instances, but with different attributes you have to set the attributes on the instance, using a property with the name of the through model:\n *\n * ```js\n * p1.UserProjects = {\n *   started: true\n * }\n * user.setProjects([p1, p2], { through: { started: false }}) // The default value is false, but p1 overrides that.\n * ```\n *\n * Similarly, when fetching through a join table with custom attributes, these attributes will be available as an object with the name of the through model.\n * ```js\n * user.getProjects().then(function (projects) {\n   *   let p1 = projects[0]\n   *   p1.UserProjects.started // Is this project started yet?\n   * })\n * ```\n *\n * In the API reference below, add the name of the association to the method, e.g. for `User.belongsToMany(Project)` the getter will be `user.getProjects()`.\n *\n * @see {@link Model.belongsToMany}\n ",
            "start": 342,
            "end": 1910,
            "loc": {
              "start": {
                "line": 12,
                "column": 0
              },
              "end": {
                "line": 56,
                "column": 3
              }
            }
          }
        ]
      },
      {
        "type": "ClassDeclaration",
        "start": 1911,
        "end": 26719,
        "loc": {
          "start": {
            "line": 57,
            "column": 0
          },
          "end": {
            "line": 727,
            "column": 1
          }
        },
        "id": {
          "type": "Identifier",
          "start": 1917,
          "end": 1930,
          "loc": {
            "start": {
              "line": 57,
              "column": 6
            },
            "end": {
              "line": 57,
              "column": 19
            },
            "identifierName": "BelongsToMany"
          },
          "name": "BelongsToMany",
          "leadingComments": null
        },
        "superClass": {
          "type": "Identifier",
          "start": 1939,
          "end": 1950,
          "loc": {
            "start": {
              "line": 57,
              "column": 28
            },
            "end": {
              "line": 57,
              "column": 39
            },
            "identifierName": "Association"
          },
          "name": "Association"
        },
        "body": {
          "type": "ClassBody",
          "start": 1951,
          "end": 26719,
          "loc": {
            "start": {
              "line": 57,
              "column": 40
            },
            "end": {
              "line": 727,
              "column": 1
            }
          },
          "body": [
            {
              "type": "ClassMethod",
              "start": 1955,
              "end": 7584,
              "loc": {
                "start": {
                  "line": 58,
                  "column": 2
                },
                "end": {
                  "line": 224,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 1955,
                "end": 1966,
                "loc": {
                  "start": {
                    "line": 58,
                    "column": 2
                  },
                  "end": {
                    "line": 58,
                    "column": 13
                  },
                  "identifierName": "constructor"
                },
                "name": "constructor"
              },
              "static": false,
              "kind": "constructor",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 1967,
                  "end": 1973,
                  "loc": {
                    "start": {
                      "line": 58,
                      "column": 14
                    },
                    "end": {
                      "line": 58,
                      "column": 20
                    },
                    "identifierName": "source"
                  },
                  "name": "source"
                },
                {
                  "type": "Identifier",
                  "start": 1975,
                  "end": 1981,
                  "loc": {
                    "start": {
                      "line": 58,
                      "column": 22
                    },
                    "end": {
                      "line": 58,
                      "column": 28
                    },
                    "identifierName": "target"
                  },
                  "name": "target"
                },
                {
                  "type": "Identifier",
                  "start": 1983,
                  "end": 1990,
                  "loc": {
                    "start": {
                      "line": 58,
                      "column": 30
                    },
                    "end": {
                      "line": 58,
                      "column": 37
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 1992,
                "end": 7584,
                "loc": {
                  "start": {
                    "line": 58,
                    "column": 39
                  },
                  "end": {
                    "line": 224,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 1998,
                    "end": 2029,
                    "loc": {
                      "start": {
                        "line": 59,
                        "column": 4
                      },
                      "end": {
                        "line": 59,
                        "column": 35
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 1998,
                      "end": 2028,
                      "loc": {
                        "start": {
                          "line": 59,
                          "column": 4
                        },
                        "end": {
                          "line": 59,
                          "column": 34
                        }
                      },
                      "callee": {
                        "type": "Super",
                        "start": 1998,
                        "end": 2003,
                        "loc": {
                          "start": {
                            "line": 59,
                            "column": 4
                          },
                          "end": {
                            "line": 59,
                            "column": 9
                          }
                        }
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 2004,
                          "end": 2010,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 10
                            },
                            "end": {
                              "line": 59,
                              "column": 16
                            },
                            "identifierName": "source"
                          },
                          "name": "source"
                        },
                        {
                          "type": "Identifier",
                          "start": 2012,
                          "end": 2018,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 18
                            },
                            "end": {
                              "line": 59,
                              "column": 24
                            },
                            "identifierName": "target"
                          },
                          "name": "target"
                        },
                        {
                          "type": "Identifier",
                          "start": 2020,
                          "end": 2027,
                          "loc": {
                            "start": {
                              "line": 59,
                              "column": 26
                            },
                            "end": {
                              "line": 59,
                              "column": 33
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        }
                      ]
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 2035,
                    "end": 2258,
                    "loc": {
                      "start": {
                        "line": 61,
                        "column": 4
                      },
                      "end": {
                        "line": 63,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 2039,
                      "end": 2139,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 8
                        },
                        "end": {
                          "line": 61,
                          "column": 108
                        }
                      },
                      "left": {
                        "type": "LogicalExpression",
                        "start": 2039,
                        "end": 2106,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 8
                          },
                          "end": {
                            "line": 61,
                            "column": 75
                          }
                        },
                        "left": {
                          "type": "BinaryExpression",
                          "start": 2039,
                          "end": 2073,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 8
                            },
                            "end": {
                              "line": 61,
                              "column": 42
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 2039,
                            "end": 2059,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 8
                              },
                              "end": {
                                "line": 61,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2039,
                              "end": 2051,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 8
                                },
                                "end": {
                                  "line": 61,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2039,
                                "end": 2043,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 12
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2044,
                                "end": 2051,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 20
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2052,
                              "end": 2059,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 21
                                },
                                "end": {
                                  "line": 61,
                                  "column": 28
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "operator": "===",
                          "right": {
                            "type": "Identifier",
                            "start": 2064,
                            "end": 2073,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 33
                              },
                              "end": {
                                "line": 61,
                                "column": 42
                              },
                              "identifierName": "undefined"
                            },
                            "name": "undefined"
                          }
                        },
                        "operator": "||",
                        "right": {
                          "type": "BinaryExpression",
                          "start": 2077,
                          "end": 2106,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 46
                            },
                            "end": {
                              "line": 61,
                              "column": 75
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 2077,
                            "end": 2097,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 46
                              },
                              "end": {
                                "line": 61,
                                "column": 66
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2077,
                              "end": 2089,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 46
                                },
                                "end": {
                                  "line": 61,
                                  "column": 58
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2077,
                                "end": 2081,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 50
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2082,
                                "end": 2089,
                                "loc": {
                                  "start": {
                                    "line": 61,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 61,
                                    "column": 58
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2090,
                              "end": 2097,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 59
                                },
                                "end": {
                                  "line": 61,
                                  "column": 66
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "operator": "===",
                          "right": {
                            "type": "BooleanLiteral",
                            "start": 2102,
                            "end": 2106,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 71
                              },
                              "end": {
                                "line": 61,
                                "column": 75
                              }
                            },
                            "value": true
                          }
                        }
                      },
                      "operator": "||",
                      "right": {
                        "type": "BinaryExpression",
                        "start": 2110,
                        "end": 2139,
                        "loc": {
                          "start": {
                            "line": 61,
                            "column": 79
                          },
                          "end": {
                            "line": 61,
                            "column": 108
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 2110,
                          "end": 2130,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 79
                            },
                            "end": {
                              "line": 61,
                              "column": 99
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2110,
                            "end": 2122,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 79
                              },
                              "end": {
                                "line": 61,
                                "column": 91
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2110,
                              "end": 2114,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 79
                                },
                                "end": {
                                  "line": 61,
                                  "column": 83
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2115,
                              "end": 2122,
                              "loc": {
                                "start": {
                                  "line": 61,
                                  "column": 84
                                },
                                "end": {
                                  "line": 61,
                                  "column": 91
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2123,
                            "end": 2130,
                            "loc": {
                              "start": {
                                "line": 61,
                                "column": 92
                              },
                              "end": {
                                "line": 61,
                                "column": 99
                              },
                              "identifierName": "through"
                            },
                            "name": "through"
                          },
                          "computed": false
                        },
                        "operator": "===",
                        "right": {
                          "type": "NullLiteral",
                          "start": 2135,
                          "end": 2139,
                          "loc": {
                            "start": {
                              "line": 61,
                              "column": 104
                            },
                            "end": {
                              "line": 61,
                              "column": 108
                            }
                          }
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 2141,
                      "end": 2258,
                      "loc": {
                        "start": {
                          "line": 61,
                          "column": 110
                        },
                        "end": {
                          "line": 63,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ThrowStatement",
                          "start": 2149,
                          "end": 2252,
                          "loc": {
                            "start": {
                              "line": 62,
                              "column": 6
                            },
                            "end": {
                              "line": 62,
                              "column": 109
                            }
                          },
                          "argument": {
                            "type": "NewExpression",
                            "start": 2155,
                            "end": 2251,
                            "loc": {
                              "start": {
                                "line": 62,
                                "column": 12
                              },
                              "end": {
                                "line": 62,
                                "column": 108
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 2159,
                              "end": 2175,
                              "loc": {
                                "start": {
                                  "line": 62,
                                  "column": 16
                                },
                                "end": {
                                  "line": 62,
                                  "column": 32
                                },
                                "identifierName": "AssociationError"
                              },
                              "name": "AssociationError"
                            },
                            "arguments": [
                              {
                                "type": "StringLiteral",
                                "start": 2176,
                                "end": 2250,
                                "loc": {
                                  "start": {
                                    "line": 62,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 62,
                                    "column": 107
                                  }
                                },
                                "extra": {
                                  "rawValue": "belongsToMany must be given a through option, either a string or a model",
                                  "raw": "'belongsToMany must be given a through option, either a string or a model'"
                                },
                                "value": "belongsToMany must be given a through option, either a string or a model"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 2264,
                    "end": 2375,
                    "loc": {
                      "start": {
                        "line": 65,
                        "column": 4
                      },
                      "end": {
                        "line": 69,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 2268,
                      "end": 2295,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 8
                        },
                        "end": {
                          "line": 65,
                          "column": 35
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 2269,
                        "end": 2295,
                        "loc": {
                          "start": {
                            "line": 65,
                            "column": 9
                          },
                          "end": {
                            "line": 65,
                            "column": 35
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 2269,
                          "end": 2289,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 9
                            },
                            "end": {
                              "line": 65,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 2269,
                            "end": 2281,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 9
                              },
                              "end": {
                                "line": 65,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 2269,
                              "end": 2273,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 9
                                },
                                "end": {
                                  "line": 65,
                                  "column": 13
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2274,
                              "end": 2281,
                              "loc": {
                                "start": {
                                  "line": 65,
                                  "column": 14
                                },
                                "end": {
                                  "line": 65,
                                  "column": 21
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2282,
                            "end": 2289,
                            "loc": {
                              "start": {
                                "line": 65,
                                "column": 22
                              },
                              "end": {
                                "line": 65,
                                "column": 29
                              },
                              "identifierName": "through"
                            },
                            "name": "through"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2290,
                          "end": 2295,
                          "loc": {
                            "start": {
                              "line": 65,
                              "column": 30
                            },
                            "end": {
                              "line": 65,
                              "column": 35
                            },
                            "identifierName": "model"
                          },
                          "name": "model"
                        },
                        "computed": false
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 2297,
                      "end": 2375,
                      "loc": {
                        "start": {
                          "line": 65,
                          "column": 37
                        },
                        "end": {
                          "line": 69,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 2305,
                          "end": 2369,
                          "loc": {
                            "start": {
                              "line": 66,
                              "column": 6
                            },
                            "end": {
                              "line": 68,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 2305,
                            "end": 2368,
                            "loc": {
                              "start": {
                                "line": 66,
                                "column": 6
                              },
                              "end": {
                                "line": 68,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 2305,
                              "end": 2325,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 6
                                },
                                "end": {
                                  "line": 66,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2305,
                                "end": 2317,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2305,
                                  "end": 2309,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2310,
                                  "end": 2317,
                                  "loc": {
                                    "start": {
                                      "line": 66,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 66,
                                      "column": 18
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2318,
                                "end": 2325,
                                "loc": {
                                  "start": {
                                    "line": 66,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 66,
                                    "column": 26
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 2328,
                              "end": 2368,
                              "loc": {
                                "start": {
                                  "line": 66,
                                  "column": 29
                                },
                                "end": {
                                  "line": 68,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 2338,
                                  "end": 2360,
                                  "loc": {
                                    "start": {
                                      "line": 67,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 67,
                                      "column": 30
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 2338,
                                    "end": 2343,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 13
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "value": {
                                    "type": "MemberExpression",
                                    "start": 2345,
                                    "end": 2360,
                                    "loc": {
                                      "start": {
                                        "line": 67,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 67,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 2345,
                                      "end": 2352,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 22
                                        },
                                        "identifierName": "options"
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2353,
                                      "end": 2360,
                                      "loc": {
                                        "start": {
                                          "line": 67,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 67,
                                          "column": 30
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2381,
                    "end": 2420,
                    "loc": {
                      "start": {
                        "line": 71,
                        "column": 4
                      },
                      "end": {
                        "line": 71,
                        "column": 43
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2381,
                      "end": 2419,
                      "loc": {
                        "start": {
                          "line": 71,
                          "column": 4
                        },
                        "end": {
                          "line": 71,
                          "column": 42
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2381,
                        "end": 2401,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 4
                          },
                          "end": {
                            "line": 71,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2381,
                          "end": 2385,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 4
                            },
                            "end": {
                              "line": 71,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2386,
                          "end": 2401,
                          "loc": {
                            "start": {
                              "line": 71,
                              "column": 9
                            },
                            "end": {
                              "line": 71,
                              "column": 24
                            },
                            "identifierName": "associationType"
                          },
                          "name": "associationType"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "StringLiteral",
                        "start": 2404,
                        "end": 2419,
                        "loc": {
                          "start": {
                            "line": 71,
                            "column": 27
                          },
                          "end": {
                            "line": 71,
                            "column": 42
                          }
                        },
                        "extra": {
                          "rawValue": "BelongsToMany",
                          "raw": "'BelongsToMany'"
                        },
                        "value": "BelongsToMany"
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2425,
                    "end": 2455,
                    "loc": {
                      "start": {
                        "line": 72,
                        "column": 4
                      },
                      "end": {
                        "line": 72,
                        "column": 34
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2425,
                      "end": 2454,
                      "loc": {
                        "start": {
                          "line": 72,
                          "column": 4
                        },
                        "end": {
                          "line": 72,
                          "column": 33
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2425,
                        "end": 2447,
                        "loc": {
                          "start": {
                            "line": 72,
                            "column": 4
                          },
                          "end": {
                            "line": 72,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2425,
                          "end": 2429,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 4
                            },
                            "end": {
                              "line": 72,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2430,
                          "end": 2447,
                          "loc": {
                            "start": {
                              "line": 72,
                              "column": 9
                            },
                            "end": {
                              "line": 72,
                              "column": 26
                            },
                            "identifierName": "targetAssociation"
                          },
                          "name": "targetAssociation"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NullLiteral",
                        "start": 2450,
                        "end": 2454,
                        "loc": {
                          "start": {
                            "line": 72,
                            "column": 29
                          },
                          "end": {
                            "line": 72,
                            "column": 33
                          }
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2460,
                    "end": 2494,
                    "loc": {
                      "start": {
                        "line": 73,
                        "column": 4
                      },
                      "end": {
                        "line": 73,
                        "column": 38
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2460,
                      "end": 2493,
                      "loc": {
                        "start": {
                          "line": 73,
                          "column": 4
                        },
                        "end": {
                          "line": 73,
                          "column": 37
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2460,
                        "end": 2474,
                        "loc": {
                          "start": {
                            "line": 73,
                            "column": 4
                          },
                          "end": {
                            "line": 73,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2460,
                          "end": 2464,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 4
                            },
                            "end": {
                              "line": 73,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2465,
                          "end": 2474,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 9
                            },
                            "end": {
                              "line": 73,
                              "column": 18
                            },
                            "identifierName": "sequelize"
                          },
                          "name": "sequelize"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 2477,
                        "end": 2493,
                        "loc": {
                          "start": {
                            "line": 73,
                            "column": 21
                          },
                          "end": {
                            "line": 73,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 2477,
                          "end": 2483,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 21
                            },
                            "end": {
                              "line": 73,
                              "column": 27
                            },
                            "identifierName": "source"
                          },
                          "name": "source"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2484,
                          "end": 2493,
                          "loc": {
                            "start": {
                              "line": 73,
                              "column": 28
                            },
                            "end": {
                              "line": 73,
                              "column": 37
                            },
                            "identifierName": "sequelize"
                          },
                          "name": "sequelize"
                        },
                        "computed": false
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2499,
                    "end": 2549,
                    "loc": {
                      "start": {
                        "line": 74,
                        "column": 4
                      },
                      "end": {
                        "line": 74,
                        "column": 54
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2499,
                      "end": 2548,
                      "loc": {
                        "start": {
                          "line": 74,
                          "column": 4
                        },
                        "end": {
                          "line": 74,
                          "column": 53
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2499,
                        "end": 2511,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 4
                          },
                          "end": {
                            "line": 74,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2499,
                          "end": 2503,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 4
                            },
                            "end": {
                              "line": 74,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2504,
                          "end": 2511,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 9
                            },
                            "end": {
                              "line": 74,
                              "column": 16
                            },
                            "identifierName": "through"
                          },
                          "name": "through"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 2514,
                        "end": 2548,
                        "loc": {
                          "start": {
                            "line": 74,
                            "column": 19
                          },
                          "end": {
                            "line": 74,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 2514,
                          "end": 2522,
                          "loc": {
                            "start": {
                              "line": 74,
                              "column": 19
                            },
                            "end": {
                              "line": 74,
                              "column": 27
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 2514,
                            "end": 2515,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 19
                              },
                              "end": {
                                "line": 74,
                                "column": 20
                              },
                              "identifierName": "_"
                            },
                            "name": "_"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2516,
                            "end": 2522,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 21
                              },
                              "end": {
                                "line": 74,
                                "column": 27
                              },
                              "identifierName": "assign"
                            },
                            "name": "assign"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 2523,
                            "end": 2525,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 28
                              },
                              "end": {
                                "line": 74,
                                "column": 30
                              }
                            },
                            "properties": []
                          },
                          {
                            "type": "MemberExpression",
                            "start": 2527,
                            "end": 2547,
                            "loc": {
                              "start": {
                                "line": 74,
                                "column": 32
                              },
                              "end": {
                                "line": 74,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 2527,
                              "end": 2539,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 32
                                },
                                "end": {
                                  "line": 74,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2527,
                                "end": 2531,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 36
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2532,
                                "end": 2539,
                                "loc": {
                                  "start": {
                                    "line": 74,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 74,
                                    "column": 44
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 2540,
                              "end": 2547,
                              "loc": {
                                "start": {
                                  "line": 74,
                                  "column": 45
                                },
                                "end": {
                                  "line": 74,
                                  "column": 52
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2554,
                    "end": 2585,
                    "loc": {
                      "start": {
                        "line": 75,
                        "column": 4
                      },
                      "end": {
                        "line": 75,
                        "column": 35
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2554,
                      "end": 2584,
                      "loc": {
                        "start": {
                          "line": 75,
                          "column": 4
                        },
                        "end": {
                          "line": 75,
                          "column": 34
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2554,
                        "end": 2577,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 4
                          },
                          "end": {
                            "line": 75,
                            "column": 27
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2554,
                          "end": 2558,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 4
                            },
                            "end": {
                              "line": 75,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2559,
                          "end": 2577,
                          "loc": {
                            "start": {
                              "line": 75,
                              "column": 9
                            },
                            "end": {
                              "line": 75,
                              "column": 27
                            },
                            "identifierName": "isMultiAssociation"
                          },
                          "name": "isMultiAssociation"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 2580,
                        "end": 2584,
                        "loc": {
                          "start": {
                            "line": 75,
                            "column": 30
                          },
                          "end": {
                            "line": 75,
                            "column": 34
                          }
                        },
                        "value": true
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 2590,
                    "end": 2616,
                    "loc": {
                      "start": {
                        "line": 76,
                        "column": 4
                      },
                      "end": {
                        "line": 76,
                        "column": 30
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 2590,
                      "end": 2615,
                      "loc": {
                        "start": {
                          "line": 76,
                          "column": 4
                        },
                        "end": {
                          "line": 76,
                          "column": 29
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 2590,
                        "end": 2607,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 4
                          },
                          "end": {
                            "line": 76,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2590,
                          "end": 2594,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 4
                            },
                            "end": {
                              "line": 76,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2595,
                          "end": 2607,
                          "loc": {
                            "start": {
                              "line": 76,
                              "column": 9
                            },
                            "end": {
                              "line": 76,
                              "column": 21
                            },
                            "identifierName": "doubleLinked"
                          },
                          "name": "doubleLinked"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 2610,
                        "end": 2615,
                        "loc": {
                          "start": {
                            "line": 76,
                            "column": 24
                          },
                          "end": {
                            "line": 76,
                            "column": 29
                          }
                        },
                        "value": false
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 2622,
                    "end": 2764,
                    "loc": {
                      "start": {
                        "line": 78,
                        "column": 4
                      },
                      "end": {
                        "line": 80,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 2626,
                      "end": 2660,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 8
                        },
                        "end": {
                          "line": 78,
                          "column": 42
                        }
                      },
                      "left": {
                        "type": "UnaryExpression",
                        "start": 2626,
                        "end": 2634,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 8
                          },
                          "end": {
                            "line": 78,
                            "column": 16
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 2627,
                          "end": 2634,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 9
                            },
                            "end": {
                              "line": 78,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 2627,
                            "end": 2631,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 9
                              },
                              "end": {
                                "line": 78,
                                "column": 13
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 2632,
                            "end": 2634,
                            "loc": {
                              "start": {
                                "line": 78,
                                "column": 14
                              },
                              "end": {
                                "line": 78,
                                "column": 16
                              },
                              "identifierName": "as"
                            },
                            "name": "as"
                          },
                          "computed": false
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "operator": "&&",
                      "right": {
                        "type": "MemberExpression",
                        "start": 2638,
                        "end": 2660,
                        "loc": {
                          "start": {
                            "line": 78,
                            "column": 20
                          },
                          "end": {
                            "line": 78,
                            "column": 42
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 2638,
                          "end": 2642,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 20
                            },
                            "end": {
                              "line": 78,
                              "column": 24
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 2643,
                          "end": 2660,
                          "loc": {
                            "start": {
                              "line": 78,
                              "column": 25
                            },
                            "end": {
                              "line": 78,
                              "column": 42
                            },
                            "identifierName": "isSelfAssociation"
                          },
                          "name": "isSelfAssociation"
                        },
                        "computed": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 2662,
                      "end": 2764,
                      "loc": {
                        "start": {
                          "line": 78,
                          "column": 44
                        },
                        "end": {
                          "line": 80,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ThrowStatement",
                          "start": 2670,
                          "end": 2758,
                          "loc": {
                            "start": {
                              "line": 79,
                              "column": 6
                            },
                            "end": {
                              "line": 79,
                              "column": 94
                            }
                          },
                          "argument": {
                            "type": "NewExpression",
                            "start": 2676,
                            "end": 2757,
                            "loc": {
                              "start": {
                                "line": 79,
                                "column": 12
                              },
                              "end": {
                                "line": 79,
                                "column": 93
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 2680,
                              "end": 2696,
                              "loc": {
                                "start": {
                                  "line": 79,
                                  "column": 16
                                },
                                "end": {
                                  "line": 79,
                                  "column": 32
                                },
                                "identifierName": "AssociationError"
                              },
                              "name": "AssociationError"
                            },
                            "arguments": [
                              {
                                "type": "StringLiteral",
                                "start": 2697,
                                "end": 2756,
                                "loc": {
                                  "start": {
                                    "line": 79,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 79,
                                    "column": 92
                                  }
                                },
                                "extra": {
                                  "rawValue": "'as' must be defined for many-to-many self-associations",
                                  "raw": "'\\'as\\' must be defined for many-to-many self-associations'"
                                },
                                "value": "'as' must be defined for many-to-many self-associations"
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 2770,
                    "end": 3187,
                    "loc": {
                      "start": {
                        "line": 82,
                        "column": 4
                      },
                      "end": {
                        "line": 97,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 2774,
                      "end": 2781,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 8
                        },
                        "end": {
                          "line": 82,
                          "column": 15
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 2774,
                        "end": 2778,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 8
                          },
                          "end": {
                            "line": 82,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 2779,
                        "end": 2781,
                        "loc": {
                          "start": {
                            "line": 82,
                            "column": 13
                          },
                          "end": {
                            "line": 82,
                            "column": 15
                          },
                          "identifierName": "as"
                        },
                        "name": "as"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 2783,
                      "end": 3073,
                      "loc": {
                        "start": {
                          "line": 82,
                          "column": 17
                        },
                        "end": {
                          "line": 94,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 2791,
                          "end": 2813,
                          "loc": {
                            "start": {
                              "line": 83,
                              "column": 6
                            },
                            "end": {
                              "line": 83,
                              "column": 28
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 2791,
                            "end": 2812,
                            "loc": {
                              "start": {
                                "line": 83,
                                "column": 6
                              },
                              "end": {
                                "line": 83,
                                "column": 27
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 2791,
                              "end": 2805,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 6
                                },
                                "end": {
                                  "line": 83,
                                  "column": 20
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 2791,
                                "end": 2795,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2796,
                                "end": 2805,
                                "loc": {
                                  "start": {
                                    "line": 83,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 83,
                                    "column": 20
                                  },
                                  "identifierName": "isAliased"
                                },
                                "name": "isAliased"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "BooleanLiteral",
                              "start": 2808,
                              "end": 2812,
                              "loc": {
                                "start": {
                                  "line": 83,
                                  "column": 23
                                },
                                "end": {
                                  "line": 83,
                                  "column": 27
                                }
                              },
                              "value": true
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 2821,
                          "end": 3067,
                          "loc": {
                            "start": {
                              "line": 85,
                              "column": 6
                            },
                            "end": {
                              "line": 93,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "CallExpression",
                            "start": 2825,
                            "end": 2855,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 10
                              },
                              "end": {
                                "line": 85,
                                "column": 40
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 2825,
                              "end": 2846,
                              "loc": {
                                "start": {
                                  "line": 85,
                                  "column": 10
                                },
                                "end": {
                                  "line": 85,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 2825,
                                "end": 2832,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 2825,
                                  "end": 2830,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 15
                                    },
                                    "identifierName": "Utils"
                                  },
                                  "name": "Utils"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2831,
                                  "end": 2832,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 17
                                    },
                                    "identifierName": "_"
                                  },
                                  "name": "_"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 2833,
                                "end": 2846,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 31
                                  },
                                  "identifierName": "isPlainObject"
                                },
                                "name": "isPlainObject"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 2847,
                                "end": 2854,
                                "loc": {
                                  "start": {
                                    "line": 85,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 85,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 2847,
                                  "end": 2851,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 2852,
                                  "end": 2854,
                                  "loc": {
                                    "start": {
                                      "line": 85,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 85,
                                      "column": 39
                                    },
                                    "identifierName": "as"
                                  },
                                  "name": "as"
                                },
                                "computed": false
                              }
                            ]
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 2857,
                            "end": 2937,
                            "loc": {
                              "start": {
                                "line": 85,
                                "column": 42
                              },
                              "end": {
                                "line": 88,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 2867,
                                "end": 2895,
                                "loc": {
                                  "start": {
                                    "line": 86,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 86,
                                    "column": 36
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 2867,
                                  "end": 2894,
                                  "loc": {
                                    "start": {
                                      "line": 86,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 86,
                                      "column": 35
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 2867,
                                    "end": 2884,
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 25
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2867,
                                      "end": 2879,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2867,
                                        "end": 2871,
                                        "loc": {
                                          "start": {
                                            "line": 86,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 86,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2872,
                                        "end": 2879,
                                        "loc": {
                                          "start": {
                                            "line": 86,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 86,
                                            "column": 20
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2880,
                                      "end": 2884,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 25
                                        },
                                        "identifierName": "name"
                                      },
                                      "name": "name"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 2887,
                                    "end": 2894,
                                    "loc": {
                                      "start": {
                                        "line": 86,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 86,
                                        "column": 35
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 2887,
                                      "end": 2891,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 28
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 32
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2892,
                                      "end": 2894,
                                      "loc": {
                                        "start": {
                                          "line": 86,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 86,
                                          "column": 35
                                        },
                                        "identifierName": "as"
                                      },
                                      "name": "as"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 2904,
                                "end": 2929,
                                "loc": {
                                  "start": {
                                    "line": 87,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 87,
                                    "column": 33
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 2904,
                                  "end": 2928,
                                  "loc": {
                                    "start": {
                                      "line": 87,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 87,
                                      "column": 32
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 2904,
                                    "end": 2911,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 15
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 2904,
                                      "end": 2908,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2909,
                                      "end": 2911,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 15
                                        },
                                        "identifierName": "as"
                                      },
                                      "name": "as"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 2914,
                                    "end": 2928,
                                    "loc": {
                                      "start": {
                                        "line": 87,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 87,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2914,
                                      "end": 2921,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 25
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2914,
                                        "end": 2918,
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 18
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 22
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2919,
                                        "end": 2921,
                                        "loc": {
                                          "start": {
                                            "line": 87,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 87,
                                            "column": 25
                                          },
                                          "identifierName": "as"
                                        },
                                        "name": "as"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2922,
                                      "end": 2928,
                                      "loc": {
                                        "start": {
                                          "line": 87,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 87,
                                          "column": 32
                                        },
                                        "identifierName": "plural"
                                      },
                                      "name": "plural"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 2943,
                            "end": 3067,
                            "loc": {
                              "start": {
                                "line": 88,
                                "column": 13
                              },
                              "end": {
                                "line": 93,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 2953,
                                "end": 3059,
                                "loc": {
                                  "start": {
                                    "line": 89,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 92,
                                    "column": 10
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 2953,
                                  "end": 3058,
                                  "loc": {
                                    "start": {
                                      "line": 89,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 92,
                                      "column": 9
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 2953,
                                    "end": 2970,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 89,
                                        "column": 25
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 2953,
                                      "end": 2965,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 2953,
                                        "end": 2957,
                                        "loc": {
                                          "start": {
                                            "line": 89,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 89,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 2958,
                                        "end": 2965,
                                        "loc": {
                                          "start": {
                                            "line": 89,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 89,
                                            "column": 20
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 2966,
                                      "end": 2970,
                                      "loc": {
                                        "start": {
                                          "line": 89,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 89,
                                          "column": 25
                                        },
                                        "identifierName": "name"
                                      },
                                      "name": "name"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "ObjectExpression",
                                    "start": 2973,
                                    "end": 3058,
                                    "loc": {
                                      "start": {
                                        "line": 89,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 92,
                                        "column": 9
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "ObjectProperty",
                                        "start": 2985,
                                        "end": 3000,
                                        "loc": {
                                          "start": {
                                            "line": 90,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 90,
                                            "column": 25
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 2985,
                                          "end": 2991,
                                          "loc": {
                                            "start": {
                                              "line": 90,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 90,
                                              "column": 16
                                            },
                                            "identifierName": "plural"
                                          },
                                          "name": "plural"
                                        },
                                        "value": {
                                          "type": "MemberExpression",
                                          "start": 2993,
                                          "end": 3000,
                                          "loc": {
                                            "start": {
                                              "line": 90,
                                              "column": 18
                                            },
                                            "end": {
                                              "line": 90,
                                              "column": 25
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 2993,
                                            "end": 2997,
                                            "loc": {
                                              "start": {
                                                "line": 90,
                                                "column": 18
                                              },
                                              "end": {
                                                "line": 90,
                                                "column": 22
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 2998,
                                            "end": 3000,
                                            "loc": {
                                              "start": {
                                                "line": 90,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 90,
                                                "column": 25
                                              },
                                              "identifierName": "as"
                                            },
                                            "name": "as"
                                          },
                                          "computed": false
                                        }
                                      },
                                      {
                                        "type": "ObjectProperty",
                                        "start": 3012,
                                        "end": 3048,
                                        "loc": {
                                          "start": {
                                            "line": 91,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 91,
                                            "column": 46
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 3012,
                                          "end": 3020,
                                          "loc": {
                                            "start": {
                                              "line": 91,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 91,
                                              "column": 18
                                            },
                                            "identifierName": "singular"
                                          },
                                          "name": "singular"
                                        },
                                        "value": {
                                          "type": "CallExpression",
                                          "start": 3022,
                                          "end": 3048,
                                          "loc": {
                                            "start": {
                                              "line": 91,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 91,
                                              "column": 46
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 3022,
                                            "end": 3039,
                                            "loc": {
                                              "start": {
                                                "line": 91,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 91,
                                                "column": 37
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 3022,
                                              "end": 3027,
                                              "loc": {
                                                "start": {
                                                  "line": 91,
                                                  "column": 20
                                                },
                                                "end": {
                                                  "line": 91,
                                                  "column": 25
                                                },
                                                "identifierName": "Utils"
                                              },
                                              "name": "Utils"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 3028,
                                              "end": 3039,
                                              "loc": {
                                                "start": {
                                                  "line": 91,
                                                  "column": 26
                                                },
                                                "end": {
                                                  "line": 91,
                                                  "column": 37
                                                },
                                                "identifierName": "singularize"
                                              },
                                              "name": "singularize"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "MemberExpression",
                                              "start": 3040,
                                              "end": 3047,
                                              "loc": {
                                                "start": {
                                                  "line": 91,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 91,
                                                  "column": 45
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 3040,
                                                "end": 3044,
                                                "loc": {
                                                  "start": {
                                                    "line": 91,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 91,
                                                    "column": 42
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 3045,
                                                "end": 3047,
                                                "loc": {
                                                  "start": {
                                                    "line": 91,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 91,
                                                    "column": 45
                                                  },
                                                  "identifierName": "as"
                                                },
                                                "name": "as"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 3079,
                      "end": 3187,
                      "loc": {
                        "start": {
                          "line": 94,
                          "column": 11
                        },
                        "end": {
                          "line": 97,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 3087,
                          "end": 3129,
                          "loc": {
                            "start": {
                              "line": 95,
                              "column": 6
                            },
                            "end": {
                              "line": 95,
                              "column": 48
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3087,
                            "end": 3128,
                            "loc": {
                              "start": {
                                "line": 95,
                                "column": 6
                              },
                              "end": {
                                "line": 95,
                                "column": 47
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3087,
                              "end": 3094,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 6
                                },
                                "end": {
                                  "line": 95,
                                  "column": 13
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3087,
                                "end": 3091,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3092,
                                "end": 3094,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 13
                                  },
                                  "identifierName": "as"
                                },
                                "name": "as"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "MemberExpression",
                              "start": 3097,
                              "end": 3128,
                              "loc": {
                                "start": {
                                  "line": 95,
                                  "column": 16
                                },
                                "end": {
                                  "line": 95,
                                  "column": 47
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3097,
                                "end": 3121,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3097,
                                  "end": 3116,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 35
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 3097,
                                    "end": 3108,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 27
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3097,
                                      "end": 3101,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 20
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3102,
                                      "end": 3108,
                                      "loc": {
                                        "start": {
                                          "line": 95,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 95,
                                          "column": 27
                                        },
                                        "identifierName": "target"
                                      },
                                      "name": "target"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3109,
                                    "end": 3116,
                                    "loc": {
                                      "start": {
                                        "line": 95,
                                        "column": 28
                                      },
                                      "end": {
                                        "line": 95,
                                        "column": 35
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3117,
                                  "end": 3121,
                                  "loc": {
                                    "start": {
                                      "line": 95,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 95,
                                      "column": 40
                                    },
                                    "identifierName": "name"
                                  },
                                  "name": "name"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3122,
                                "end": 3128,
                                "loc": {
                                  "start": {
                                    "line": 95,
                                    "column": 41
                                  },
                                  "end": {
                                    "line": 95,
                                    "column": 47
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              },
                              "computed": false
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 3136,
                          "end": 3181,
                          "loc": {
                            "start": {
                              "line": 96,
                              "column": 6
                            },
                            "end": {
                              "line": 96,
                              "column": 51
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3136,
                            "end": 3180,
                            "loc": {
                              "start": {
                                "line": 96,
                                "column": 6
                              },
                              "end": {
                                "line": 96,
                                "column": 50
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3136,
                              "end": 3153,
                              "loc": {
                                "start": {
                                  "line": 96,
                                  "column": 6
                                },
                                "end": {
                                  "line": 96,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3136,
                                "end": 3148,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 18
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3136,
                                  "end": 3140,
                                  "loc": {
                                    "start": {
                                      "line": 96,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 96,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3141,
                                  "end": 3148,
                                  "loc": {
                                    "start": {
                                      "line": 96,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 96,
                                      "column": 18
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3149,
                                "end": 3153,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 23
                                  },
                                  "identifierName": "name"
                                },
                                "name": "name"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "MemberExpression",
                              "start": 3156,
                              "end": 3180,
                              "loc": {
                                "start": {
                                  "line": 96,
                                  "column": 26
                                },
                                "end": {
                                  "line": 96,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3156,
                                "end": 3175,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3156,
                                  "end": 3167,
                                  "loc": {
                                    "start": {
                                      "line": 96,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 96,
                                      "column": 37
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3156,
                                    "end": 3160,
                                    "loc": {
                                      "start": {
                                        "line": 96,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 96,
                                        "column": 30
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3161,
                                    "end": 3167,
                                    "loc": {
                                      "start": {
                                        "line": 96,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 96,
                                        "column": 37
                                      },
                                      "identifierName": "target"
                                    },
                                    "name": "target"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3168,
                                  "end": 3175,
                                  "loc": {
                                    "start": {
                                      "line": 96,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 96,
                                      "column": 45
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3176,
                                "end": 3180,
                                "loc": {
                                  "start": {
                                    "line": 96,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 96,
                                    "column": 50
                                  },
                                  "identifierName": "name"
                                },
                                "name": "name"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 3193,
                    "end": 3368,
                    "loc": {
                      "start": {
                        "line": 99,
                        "column": 4
                      },
                      "end": {
                        "line": 102,
                        "column": 6
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 3193,
                      "end": 3367,
                      "loc": {
                        "start": {
                          "line": 99,
                          "column": 4
                        },
                        "end": {
                          "line": 102,
                          "column": 5
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 3193,
                        "end": 3215,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 4
                          },
                          "end": {
                            "line": 99,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 3193,
                          "end": 3197,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 4
                            },
                            "end": {
                              "line": 99,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3198,
                          "end": 3215,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 9
                            },
                            "end": {
                              "line": 99,
                              "column": 26
                            },
                            "identifierName": "combinedTableName"
                          },
                          "name": "combinedTableName"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 3218,
                        "end": 3367,
                        "loc": {
                          "start": {
                            "line": 99,
                            "column": 29
                          },
                          "end": {
                            "line": 102,
                            "column": 5
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 3218,
                          "end": 3241,
                          "loc": {
                            "start": {
                              "line": 99,
                              "column": 29
                            },
                            "end": {
                              "line": 99,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 3218,
                            "end": 3223,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 29
                              },
                              "end": {
                                "line": 99,
                                "column": 34
                              },
                              "identifierName": "Utils"
                            },
                            "name": "Utils"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3224,
                            "end": 3241,
                            "loc": {
                              "start": {
                                "line": 99,
                                "column": 35
                              },
                              "end": {
                                "line": 99,
                                "column": 52
                              },
                              "identifierName": "combineTableNames"
                            },
                            "name": "combineTableNames"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 3249,
                            "end": 3270,
                            "loc": {
                              "start": {
                                "line": 100,
                                "column": 6
                              },
                              "end": {
                                "line": 100,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 3249,
                              "end": 3260,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 6
                                },
                                "end": {
                                  "line": 100,
                                  "column": 17
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3249,
                                "end": 3253,
                                "loc": {
                                  "start": {
                                    "line": 100,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 100,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3254,
                                "end": 3260,
                                "loc": {
                                  "start": {
                                    "line": 100,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 100,
                                    "column": 17
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3261,
                              "end": 3270,
                              "loc": {
                                "start": {
                                  "line": 100,
                                  "column": 18
                                },
                                "end": {
                                  "line": 100,
                                  "column": 27
                                },
                                "identifierName": "tableName"
                              },
                              "name": "tableName"
                            },
                            "computed": false
                          },
                          {
                            "type": "ConditionalExpression",
                            "start": 3278,
                            "end": 3361,
                            "loc": {
                              "start": {
                                "line": 101,
                                "column": 6
                              },
                              "end": {
                                "line": 101,
                                "column": 89
                              }
                            },
                            "test": {
                              "type": "MemberExpression",
                              "start": 3278,
                              "end": 3300,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 6
                                },
                                "end": {
                                  "line": 101,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3278,
                                "end": 3282,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3283,
                                "end": 3300,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 28
                                  },
                                  "identifierName": "isSelfAssociation"
                                },
                                "name": "isSelfAssociation"
                              },
                              "computed": false
                            },
                            "consequent": {
                              "type": "LogicalExpression",
                              "start": 3304,
                              "end": 3336,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 32
                                },
                                "end": {
                                  "line": 101,
                                  "column": 64
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3304,
                                "end": 3311,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 32
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3304,
                                  "end": 3308,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 36
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3309,
                                  "end": 3311,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 39
                                    },
                                    "identifierName": "as"
                                  },
                                  "name": "as"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 3315,
                                "end": 3336,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 64
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3315,
                                  "end": 3326,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3315,
                                    "end": 3319,
                                    "loc": {
                                      "start": {
                                        "line": 101,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 101,
                                        "column": 47
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3320,
                                    "end": 3326,
                                    "loc": {
                                      "start": {
                                        "line": 101,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 101,
                                        "column": 54
                                      },
                                      "identifierName": "target"
                                    },
                                    "name": "target"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3327,
                                  "end": 3336,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 64
                                    },
                                    "identifierName": "tableName"
                                  },
                                  "name": "tableName"
                                },
                                "computed": false
                              },
                              "extra": {
                                "parenthesized": true,
                                "parenStart": 3303
                              }
                            },
                            "alternate": {
                              "type": "MemberExpression",
                              "start": 3340,
                              "end": 3361,
                              "loc": {
                                "start": {
                                  "line": 101,
                                  "column": 68
                                },
                                "end": {
                                  "line": 101,
                                  "column": 89
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3340,
                                "end": 3351,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 79
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3340,
                                  "end": 3344,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 68
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 72
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3345,
                                  "end": 3351,
                                  "loc": {
                                    "start": {
                                      "line": 101,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 101,
                                      "column": 79
                                    },
                                    "identifierName": "target"
                                  },
                                  "name": "target"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3352,
                                "end": 3361,
                                "loc": {
                                  "start": {
                                    "line": 101,
                                    "column": 80
                                  },
                                  "end": {
                                    "line": 101,
                                    "column": 89
                                  },
                                  "identifierName": "tableName"
                                },
                                "name": "tableName"
                              },
                              "computed": false
                            }
                          }
                        ]
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * If self association, this is the target association - Unless we find a pairing association\n    ",
                        "start": 3374,
                        "end": 3480,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 4
                          },
                          "end": {
                            "line": 106,
                            "column": 6
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "IfStatement",
                    "start": 3485,
                    "end": 3557,
                    "loc": {
                      "start": {
                        "line": 107,
                        "column": 4
                      },
                      "end": {
                        "line": 109,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 3489,
                      "end": 3511,
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 8
                        },
                        "end": {
                          "line": 107,
                          "column": 30
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 3489,
                        "end": 3493,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 8
                          },
                          "end": {
                            "line": 107,
                            "column": 12
                          }
                        },
                        "leadingComments": null
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 3494,
                        "end": 3511,
                        "loc": {
                          "start": {
                            "line": 107,
                            "column": 13
                          },
                          "end": {
                            "line": 107,
                            "column": 30
                          },
                          "identifierName": "isSelfAssociation"
                        },
                        "name": "isSelfAssociation"
                      },
                      "computed": false,
                      "leadingComments": null
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 3513,
                      "end": 3557,
                      "loc": {
                        "start": {
                          "line": 107,
                          "column": 32
                        },
                        "end": {
                          "line": 109,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 3521,
                          "end": 3551,
                          "loc": {
                            "start": {
                              "line": 108,
                              "column": 6
                            },
                            "end": {
                              "line": 108,
                              "column": 36
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3521,
                            "end": 3550,
                            "loc": {
                              "start": {
                                "line": 108,
                                "column": 6
                              },
                              "end": {
                                "line": 108,
                                "column": 35
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3521,
                              "end": 3543,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 6
                                },
                                "end": {
                                  "line": 108,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3521,
                                "end": 3525,
                                "loc": {
                                  "start": {
                                    "line": 108,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 108,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3526,
                                "end": 3543,
                                "loc": {
                                  "start": {
                                    "line": 108,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 108,
                                    "column": 28
                                  },
                                  "identifierName": "targetAssociation"
                                },
                                "name": "targetAssociation"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ThisExpression",
                              "start": 3546,
                              "end": 3550,
                              "loc": {
                                "start": {
                                  "line": 108,
                                  "column": 31
                                },
                                "end": {
                                  "line": 108,
                                  "column": 35
                                }
                              }
                            }
                          }
                        }
                      ],
                      "directives": [],
                      "trailingComments": null
                    },
                    "alternate": null,
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * If self association, this is the target association - Unless we find a pairing association\n    ",
                        "start": 3374,
                        "end": 3480,
                        "loc": {
                          "start": {
                            "line": 104,
                            "column": 4
                          },
                          "end": {
                            "line": 106,
                            "column": 6
                          }
                        }
                      }
                    ],
                    "trailingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * Default/generated foreign/other keys\n    ",
                        "start": 3563,
                        "end": 3615,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 4
                          },
                          "end": {
                            "line": 113,
                            "column": 6
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "IfStatement",
                    "start": 3620,
                    "end": 4246,
                    "loc": {
                      "start": {
                        "line": 114,
                        "column": 4
                      },
                      "end": {
                        "line": 130,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 3624,
                      "end": 3659,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 8
                        },
                        "end": {
                          "line": 114,
                          "column": 43
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 3624,
                        "end": 3634,
                        "loc": {
                          "start": {
                            "line": 114,
                            "column": 8
                          },
                          "end": {
                            "line": 114,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 3624,
                          "end": 3625,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 8
                            },
                            "end": {
                              "line": 114,
                              "column": 9
                            },
                            "identifierName": "_"
                          },
                          "name": "_",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 3626,
                          "end": 3634,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 10
                            },
                            "end": {
                              "line": 114,
                              "column": 18
                            },
                            "identifierName": "isObject"
                          },
                          "name": "isObject"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 3635,
                          "end": 3658,
                          "loc": {
                            "start": {
                              "line": 114,
                              "column": 19
                            },
                            "end": {
                              "line": 114,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 3635,
                            "end": 3647,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 19
                              },
                              "end": {
                                "line": 114,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 3635,
                              "end": 3639,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 19
                                },
                                "end": {
                                  "line": 114,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 3640,
                              "end": 3647,
                              "loc": {
                                "start": {
                                  "line": 114,
                                  "column": 24
                                },
                                "end": {
                                  "line": 114,
                                  "column": 31
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 3648,
                            "end": 3658,
                            "loc": {
                              "start": {
                                "line": 114,
                                "column": 32
                              },
                              "end": {
                                "line": 114,
                                "column": 42
                              },
                              "identifierName": "foreignKey"
                            },
                            "name": "foreignKey"
                          },
                          "computed": false
                        }
                      ],
                      "leadingComments": null
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 3661,
                      "end": 3819,
                      "loc": {
                        "start": {
                          "line": 114,
                          "column": 45
                        },
                        "end": {
                          "line": 117,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 3669,
                          "end": 3720,
                          "loc": {
                            "start": {
                              "line": 115,
                              "column": 6
                            },
                            "end": {
                              "line": 115,
                              "column": 57
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3669,
                            "end": 3719,
                            "loc": {
                              "start": {
                                "line": 115,
                                "column": 6
                              },
                              "end": {
                                "line": 115,
                                "column": 56
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3669,
                              "end": 3693,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 6
                                },
                                "end": {
                                  "line": 115,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3669,
                                "end": 3673,
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3674,
                                "end": 3693,
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 30
                                  },
                                  "identifierName": "foreignKeyAttribute"
                                },
                                "name": "foreignKeyAttribute"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "MemberExpression",
                              "start": 3696,
                              "end": 3719,
                              "loc": {
                                "start": {
                                  "line": 115,
                                  "column": 33
                                },
                                "end": {
                                  "line": 115,
                                  "column": 56
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3696,
                                "end": 3708,
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3696,
                                  "end": 3700,
                                  "loc": {
                                    "start": {
                                      "line": 115,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 115,
                                      "column": 37
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3701,
                                  "end": 3708,
                                  "loc": {
                                    "start": {
                                      "line": 115,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 115,
                                      "column": 45
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3709,
                                "end": 3719,
                                "loc": {
                                  "start": {
                                    "line": 115,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 115,
                                    "column": 56
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 3727,
                          "end": 3813,
                          "loc": {
                            "start": {
                              "line": 116,
                              "column": 6
                            },
                            "end": {
                              "line": 116,
                              "column": 92
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3727,
                            "end": 3812,
                            "loc": {
                              "start": {
                                "line": 116,
                                "column": 6
                              },
                              "end": {
                                "line": 116,
                                "column": 91
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3727,
                              "end": 3742,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 6
                                },
                                "end": {
                                  "line": 116,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3727,
                                "end": 3731,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3732,
                                "end": 3742,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 21
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 3745,
                              "end": 3812,
                              "loc": {
                                "start": {
                                  "line": 116,
                                  "column": 24
                                },
                                "end": {
                                  "line": 116,
                                  "column": 91
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3745,
                                "end": 3774,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 53
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3745,
                                  "end": 3769,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 48
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3745,
                                    "end": 3749,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3750,
                                    "end": 3769,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 48
                                      },
                                      "identifierName": "foreignKeyAttribute"
                                    },
                                    "name": "foreignKeyAttribute"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3770,
                                  "end": 3774,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 49
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 53
                                    },
                                    "identifierName": "name"
                                  },
                                  "name": "name"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 3778,
                                "end": 3812,
                                "loc": {
                                  "start": {
                                    "line": 116,
                                    "column": 57
                                  },
                                  "end": {
                                    "line": 116,
                                    "column": 91
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3778,
                                  "end": 3802,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 81
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3778,
                                    "end": 3782,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 61
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3783,
                                    "end": 3802,
                                    "loc": {
                                      "start": {
                                        "line": 116,
                                        "column": 62
                                      },
                                      "end": {
                                        "line": 116,
                                        "column": 81
                                      },
                                      "identifierName": "foreignKeyAttribute"
                                    },
                                    "name": "foreignKeyAttribute"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3803,
                                  "end": 3812,
                                  "loc": {
                                    "start": {
                                      "line": 116,
                                      "column": 82
                                    },
                                    "end": {
                                      "line": 116,
                                      "column": 91
                                    },
                                    "identifierName": "fieldName"
                                  },
                                  "name": "fieldName"
                                },
                                "computed": false
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 3825,
                      "end": 4246,
                      "loc": {
                        "start": {
                          "line": 117,
                          "column": 11
                        },
                        "end": {
                          "line": 130,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 3833,
                          "end": 3911,
                          "loc": {
                            "start": {
                              "line": 118,
                              "column": 6
                            },
                            "end": {
                              "line": 120,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 3837,
                            "end": 3861,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 10
                              },
                              "end": {
                                "line": 118,
                                "column": 34
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 3838,
                              "end": 3861,
                              "loc": {
                                "start": {
                                  "line": 118,
                                  "column": 11
                                },
                                "end": {
                                  "line": 118,
                                  "column": 34
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 3838,
                                "end": 3850,
                                "loc": {
                                  "start": {
                                    "line": 118,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 118,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 3838,
                                  "end": 3842,
                                  "loc": {
                                    "start": {
                                      "line": 118,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 118,
                                      "column": 15
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3843,
                                  "end": 3850,
                                  "loc": {
                                    "start": {
                                      "line": 118,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 118,
                                      "column": 23
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3851,
                                "end": 3861,
                                "loc": {
                                  "start": {
                                    "line": 118,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 118,
                                    "column": 34
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 3863,
                            "end": 3911,
                            "loc": {
                              "start": {
                                "line": 118,
                                "column": 36
                              },
                              "end": {
                                "line": 120,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 3873,
                                "end": 3903,
                                "loc": {
                                  "start": {
                                    "line": 119,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 119,
                                    "column": 38
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 3873,
                                  "end": 3902,
                                  "loc": {
                                    "start": {
                                      "line": 119,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 119,
                                      "column": 37
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 3873,
                                    "end": 3895,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 3873,
                                      "end": 3877,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 3878,
                                      "end": 3895,
                                      "loc": {
                                        "start": {
                                          "line": 119,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 119,
                                          "column": 30
                                        },
                                        "identifierName": "foreignKeyDefault"
                                      },
                                      "name": "foreignKeyDefault"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 3898,
                                    "end": 3902,
                                    "loc": {
                                      "start": {
                                        "line": 119,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 119,
                                        "column": 37
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 3919,
                          "end": 3949,
                          "loc": {
                            "start": {
                              "line": 122,
                              "column": 6
                            },
                            "end": {
                              "line": 122,
                              "column": 36
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3919,
                            "end": 3948,
                            "loc": {
                              "start": {
                                "line": 122,
                                "column": 6
                              },
                              "end": {
                                "line": 122,
                                "column": 35
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3919,
                              "end": 3943,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 6
                                },
                                "end": {
                                  "line": 122,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3919,
                                "end": 3923,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3924,
                                "end": 3943,
                                "loc": {
                                  "start": {
                                    "line": 122,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 122,
                                    "column": 30
                                  },
                                  "identifierName": "foreignKeyAttribute"
                                },
                                "name": "foreignKeyAttribute"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 3946,
                              "end": 3948,
                              "loc": {
                                "start": {
                                  "line": 122,
                                  "column": 33
                                },
                                "end": {
                                  "line": 122,
                                  "column": 35
                                }
                              },
                              "properties": []
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 3956,
                          "end": 4240,
                          "loc": {
                            "start": {
                              "line": 123,
                              "column": 6
                            },
                            "end": {
                              "line": 129,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 3956,
                            "end": 4239,
                            "loc": {
                              "start": {
                                "line": 123,
                                "column": 6
                              },
                              "end": {
                                "line": 129,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 3956,
                              "end": 3971,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 6
                                },
                                "end": {
                                  "line": 123,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 3956,
                                "end": 3960,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 3961,
                                "end": 3971,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 21
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 3974,
                              "end": 4239,
                              "loc": {
                                "start": {
                                  "line": 123,
                                  "column": 24
                                },
                                "end": {
                                  "line": 129,
                                  "column": 7
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 3974,
                                "end": 3997,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 123,
                                    "column": 47
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 3974,
                                  "end": 3986,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 36
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 3974,
                                    "end": 3978,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 28
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 3979,
                                    "end": 3986,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 36
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 3987,
                                  "end": 3997,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 47
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "CallExpression",
                                "start": 4001,
                                "end": 4239,
                                "loc": {
                                  "start": {
                                    "line": 123,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 129,
                                    "column": 7
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4001,
                                  "end": 4017,
                                  "loc": {
                                    "start": {
                                      "line": 123,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 123,
                                      "column": 67
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4001,
                                    "end": 4006,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 56
                                      },
                                      "identifierName": "Utils"
                                    },
                                    "name": "Utils"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4007,
                                    "end": 4017,
                                    "loc": {
                                      "start": {
                                        "line": 123,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 123,
                                        "column": 67
                                      },
                                      "identifierName": "camelizeIf"
                                    },
                                    "name": "camelizeIf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 4027,
                                    "end": 4189,
                                    "loc": {
                                      "start": {
                                        "line": 124,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 127,
                                        "column": 19
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4027,
                                      "end": 4184,
                                      "loc": {
                                        "start": {
                                          "line": 124,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 127,
                                          "column": 14
                                        }
                                      },
                                      "object": {
                                        "type": "ArrayExpression",
                                        "start": 4027,
                                        "end": 4179,
                                        "loc": {
                                          "start": {
                                            "line": 124,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 127,
                                            "column": 9
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 4039,
                                            "end": 4126,
                                            "loc": {
                                              "start": {
                                                "line": 125,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 125,
                                                "column": 97
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 4039,
                                              "end": 4058,
                                              "loc": {
                                                "start": {
                                                  "line": 125,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 125,
                                                  "column": 29
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 4039,
                                                "end": 4044,
                                                "loc": {
                                                  "start": {
                                                    "line": 125,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 125,
                                                    "column": 15
                                                  },
                                                  "identifierName": "Utils"
                                                },
                                                "name": "Utils"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4045,
                                                "end": 4058,
                                                "loc": {
                                                  "start": {
                                                    "line": 125,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 125,
                                                    "column": 29
                                                  },
                                                  "identifierName": "underscoredIf"
                                                },
                                                "name": "underscoredIf"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 4059,
                                                "end": 4092,
                                                "loc": {
                                                  "start": {
                                                    "line": 125,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 125,
                                                    "column": 63
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 4059,
                                                  "end": 4083,
                                                  "loc": {
                                                    "start": {
                                                      "line": 125,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 125,
                                                      "column": 54
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 4059,
                                                    "end": 4078,
                                                    "loc": {
                                                      "start": {
                                                        "line": 125,
                                                        "column": 30
                                                      },
                                                      "end": {
                                                        "line": 125,
                                                        "column": 49
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 4059,
                                                      "end": 4070,
                                                      "loc": {
                                                        "start": {
                                                          "line": 125,
                                                          "column": 30
                                                        },
                                                        "end": {
                                                          "line": 125,
                                                          "column": 41
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "ThisExpression",
                                                        "start": 4059,
                                                        "end": 4063,
                                                        "loc": {
                                                          "start": {
                                                            "line": 125,
                                                            "column": 30
                                                          },
                                                          "end": {
                                                            "line": 125,
                                                            "column": 34
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 4064,
                                                        "end": 4070,
                                                        "loc": {
                                                          "start": {
                                                            "line": 125,
                                                            "column": 35
                                                          },
                                                          "end": {
                                                            "line": 125,
                                                            "column": 41
                                                          },
                                                          "identifierName": "source"
                                                        },
                                                        "name": "source"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 4071,
                                                      "end": 4078,
                                                      "loc": {
                                                        "start": {
                                                          "line": 125,
                                                          "column": 42
                                                        },
                                                        "end": {
                                                          "line": 125,
                                                          "column": 49
                                                        },
                                                        "identifierName": "options"
                                                      },
                                                      "name": "options"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4079,
                                                    "end": 4083,
                                                    "loc": {
                                                      "start": {
                                                        "line": 125,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 125,
                                                        "column": 54
                                                      },
                                                      "identifierName": "name"
                                                    },
                                                    "name": "name"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4084,
                                                  "end": 4092,
                                                  "loc": {
                                                    "start": {
                                                      "line": 125,
                                                      "column": 55
                                                    },
                                                    "end": {
                                                      "line": 125,
                                                      "column": 63
                                                    },
                                                    "identifierName": "singular"
                                                  },
                                                  "name": "singular"
                                                },
                                                "computed": false
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 4094,
                                                "end": 4125,
                                                "loc": {
                                                  "start": {
                                                    "line": 125,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 125,
                                                    "column": 96
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 4094,
                                                  "end": 4113,
                                                  "loc": {
                                                    "start": {
                                                      "line": 125,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 125,
                                                      "column": 84
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 4094,
                                                    "end": 4105,
                                                    "loc": {
                                                      "start": {
                                                        "line": 125,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 125,
                                                        "column": 76
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 4094,
                                                      "end": 4098,
                                                      "loc": {
                                                        "start": {
                                                          "line": 125,
                                                          "column": 65
                                                        },
                                                        "end": {
                                                          "line": 125,
                                                          "column": 69
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 4099,
                                                      "end": 4105,
                                                      "loc": {
                                                        "start": {
                                                          "line": 125,
                                                          "column": 70
                                                        },
                                                        "end": {
                                                          "line": 125,
                                                          "column": 76
                                                        },
                                                        "identifierName": "source"
                                                      },
                                                      "name": "source"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4106,
                                                    "end": 4113,
                                                    "loc": {
                                                      "start": {
                                                        "line": 125,
                                                        "column": 77
                                                      },
                                                      "end": {
                                                        "line": 125,
                                                        "column": 84
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4114,
                                                  "end": 4125,
                                                  "loc": {
                                                    "start": {
                                                      "line": 125,
                                                      "column": 85
                                                    },
                                                    "end": {
                                                      "line": 125,
                                                      "column": 96
                                                    },
                                                    "identifierName": "underscored"
                                                  },
                                                  "name": "underscored"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 4138,
                                            "end": 4169,
                                            "loc": {
                                              "start": {
                                                "line": 126,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 126,
                                                "column": 41
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 4138,
                                              "end": 4149,
                                              "loc": {
                                                "start": {
                                                  "line": 126,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 126,
                                                  "column": 21
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 4138,
                                                "end": 4142,
                                                "loc": {
                                                  "start": {
                                                    "line": 126,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 126,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4143,
                                                "end": 4149,
                                                "loc": {
                                                  "start": {
                                                    "line": 126,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 126,
                                                    "column": 21
                                                  },
                                                  "identifierName": "source"
                                                },
                                                "name": "source"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4150,
                                              "end": 4169,
                                              "loc": {
                                                "start": {
                                                  "line": 126,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 126,
                                                  "column": 41
                                                },
                                                "identifierName": "primaryKeyAttribute"
                                              },
                                              "name": "primaryKeyAttribute"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4180,
                                        "end": 4184,
                                        "loc": {
                                          "start": {
                                            "line": 127,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 127,
                                            "column": 14
                                          },
                                          "identifierName": "join"
                                        },
                                        "name": "join"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 4185,
                                        "end": 4188,
                                        "loc": {
                                          "start": {
                                            "line": 127,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 127,
                                            "column": 18
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "_",
                                          "raw": "'_'"
                                        },
                                        "value": "_"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "UnaryExpression",
                                    "start": 4199,
                                    "end": 4231,
                                    "loc": {
                                      "start": {
                                        "line": 128,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 128,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 4200,
                                      "end": 4231,
                                      "loc": {
                                        "start": {
                                          "line": 128,
                                          "column": 9
                                        },
                                        "end": {
                                          "line": 128,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 4200,
                                        "end": 4219,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 9
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4200,
                                          "end": 4211,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 128,
                                              "column": 20
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 4200,
                                            "end": 4204,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 9
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 13
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4205,
                                            "end": 4211,
                                            "loc": {
                                              "start": {
                                                "line": 128,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 128,
                                                "column": 20
                                              },
                                              "identifierName": "source"
                                            },
                                            "name": "source"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4212,
                                          "end": 4219,
                                          "loc": {
                                            "start": {
                                              "line": 128,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 128,
                                              "column": 28
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4220,
                                        "end": 4231,
                                        "loc": {
                                          "start": {
                                            "line": 128,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 128,
                                            "column": 40
                                          },
                                          "identifierName": "underscored"
                                        },
                                        "name": "underscored"
                                      },
                                      "computed": false
                                    },
                                    "extra": {
                                      "parenthesizedArgument": false
                                    }
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * Default/generated foreign/other keys\n    ",
                        "start": 3563,
                        "end": 3615,
                        "loc": {
                          "start": {
                            "line": 111,
                            "column": 4
                          },
                          "end": {
                            "line": 113,
                            "column": 6
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "IfStatement",
                    "start": 4252,
                    "end": 4974,
                    "loc": {
                      "start": {
                        "line": 132,
                        "column": 4
                      },
                      "end": {
                        "line": 153,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 4256,
                      "end": 4289,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 8
                        },
                        "end": {
                          "line": 132,
                          "column": 41
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 4256,
                        "end": 4266,
                        "loc": {
                          "start": {
                            "line": 132,
                            "column": 8
                          },
                          "end": {
                            "line": 132,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 4256,
                          "end": 4257,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 8
                            },
                            "end": {
                              "line": 132,
                              "column": 9
                            },
                            "identifierName": "_"
                          },
                          "name": "_"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 4258,
                          "end": 4266,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 10
                            },
                            "end": {
                              "line": 132,
                              "column": 18
                            },
                            "identifierName": "isObject"
                          },
                          "name": "isObject"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 4267,
                          "end": 4288,
                          "loc": {
                            "start": {
                              "line": 132,
                              "column": 19
                            },
                            "end": {
                              "line": 132,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 4267,
                            "end": 4279,
                            "loc": {
                              "start": {
                                "line": 132,
                                "column": 19
                              },
                              "end": {
                                "line": 132,
                                "column": 31
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 4267,
                              "end": 4271,
                              "loc": {
                                "start": {
                                  "line": 132,
                                  "column": 19
                                },
                                "end": {
                                  "line": 132,
                                  "column": 23
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 4272,
                              "end": 4279,
                              "loc": {
                                "start": {
                                  "line": 132,
                                  "column": 24
                                },
                                "end": {
                                  "line": 132,
                                  "column": 31
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 4280,
                            "end": 4288,
                            "loc": {
                              "start": {
                                "line": 132,
                                "column": 32
                              },
                              "end": {
                                "line": 132,
                                "column": 40
                              },
                              "identifierName": "otherKey"
                            },
                            "name": "otherKey"
                          },
                          "computed": false
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 4291,
                      "end": 4439,
                      "loc": {
                        "start": {
                          "line": 132,
                          "column": 43
                        },
                        "end": {
                          "line": 135,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 4299,
                          "end": 4346,
                          "loc": {
                            "start": {
                              "line": 133,
                              "column": 6
                            },
                            "end": {
                              "line": 133,
                              "column": 53
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4299,
                            "end": 4345,
                            "loc": {
                              "start": {
                                "line": 133,
                                "column": 6
                              },
                              "end": {
                                "line": 133,
                                "column": 52
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 4299,
                              "end": 4321,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 6
                                },
                                "end": {
                                  "line": 133,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4299,
                                "end": 4303,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4304,
                                "end": 4321,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 28
                                  },
                                  "identifierName": "otherKeyAttribute"
                                },
                                "name": "otherKeyAttribute"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "MemberExpression",
                              "start": 4324,
                              "end": 4345,
                              "loc": {
                                "start": {
                                  "line": 133,
                                  "column": 31
                                },
                                "end": {
                                  "line": 133,
                                  "column": 52
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 4324,
                                "end": 4336,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4324,
                                  "end": 4328,
                                  "loc": {
                                    "start": {
                                      "line": 133,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 133,
                                      "column": 35
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4329,
                                  "end": 4336,
                                  "loc": {
                                    "start": {
                                      "line": 133,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 133,
                                      "column": 43
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4337,
                                "end": 4345,
                                "loc": {
                                  "start": {
                                    "line": 133,
                                    "column": 44
                                  },
                                  "end": {
                                    "line": 133,
                                    "column": 52
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 4353,
                          "end": 4433,
                          "loc": {
                            "start": {
                              "line": 134,
                              "column": 6
                            },
                            "end": {
                              "line": 134,
                              "column": 86
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4353,
                            "end": 4432,
                            "loc": {
                              "start": {
                                "line": 134,
                                "column": 6
                              },
                              "end": {
                                "line": 134,
                                "column": 85
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 4353,
                              "end": 4366,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 6
                                },
                                "end": {
                                  "line": 134,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4353,
                                "end": 4357,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4358,
                                "end": 4366,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 19
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 4369,
                              "end": 4432,
                              "loc": {
                                "start": {
                                  "line": 134,
                                  "column": 22
                                },
                                "end": {
                                  "line": 134,
                                  "column": 85
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 4369,
                                "end": 4396,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 49
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4369,
                                  "end": 4391,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4369,
                                    "end": 4373,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4374,
                                    "end": 4391,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 44
                                      },
                                      "identifierName": "otherKeyAttribute"
                                    },
                                    "name": "otherKeyAttribute"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4392,
                                  "end": 4396,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 49
                                    },
                                    "identifierName": "name"
                                  },
                                  "name": "name"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 4400,
                                "end": 4432,
                                "loc": {
                                  "start": {
                                    "line": 134,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 134,
                                    "column": 85
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4400,
                                  "end": 4422,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 75
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4400,
                                    "end": 4404,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 57
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4405,
                                    "end": 4422,
                                    "loc": {
                                      "start": {
                                        "line": 134,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 134,
                                        "column": 75
                                      },
                                      "identifierName": "otherKeyAttribute"
                                    },
                                    "name": "otherKeyAttribute"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4423,
                                  "end": 4432,
                                  "loc": {
                                    "start": {
                                      "line": 134,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 134,
                                      "column": 85
                                    },
                                    "identifierName": "fieldName"
                                  },
                                  "name": "fieldName"
                                },
                                "computed": false
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 4445,
                      "end": 4974,
                      "loc": {
                        "start": {
                          "line": 135,
                          "column": 11
                        },
                        "end": {
                          "line": 153,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 4453,
                          "end": 4527,
                          "loc": {
                            "start": {
                              "line": 136,
                              "column": 6
                            },
                            "end": {
                              "line": 138,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 4457,
                            "end": 4479,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 10
                              },
                              "end": {
                                "line": 136,
                                "column": 32
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 4458,
                              "end": 4479,
                              "loc": {
                                "start": {
                                  "line": 136,
                                  "column": 11
                                },
                                "end": {
                                  "line": 136,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 4458,
                                "end": 4470,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 23
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 4458,
                                  "end": 4462,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 15
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4463,
                                  "end": 4470,
                                  "loc": {
                                    "start": {
                                      "line": 136,
                                      "column": 16
                                    },
                                    "end": {
                                      "line": 136,
                                      "column": 23
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4471,
                                "end": 4479,
                                "loc": {
                                  "start": {
                                    "line": 136,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 136,
                                    "column": 32
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 4481,
                            "end": 4527,
                            "loc": {
                              "start": {
                                "line": 136,
                                "column": 34
                              },
                              "end": {
                                "line": 138,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 4491,
                                "end": 4519,
                                "loc": {
                                  "start": {
                                    "line": 137,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 137,
                                    "column": 36
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 4491,
                                  "end": 4518,
                                  "loc": {
                                    "start": {
                                      "line": 137,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 137,
                                      "column": 35
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 4491,
                                    "end": 4511,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 4491,
                                      "end": 4495,
                                      "loc": {
                                        "start": {
                                          "line": 137,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 137,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 4496,
                                      "end": 4511,
                                      "loc": {
                                        "start": {
                                          "line": 137,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 137,
                                          "column": 28
                                        },
                                        "identifierName": "otherKeyDefault"
                                      },
                                      "name": "otherKeyDefault"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "BooleanLiteral",
                                    "start": 4514,
                                    "end": 4518,
                                    "loc": {
                                      "start": {
                                        "line": 137,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 137,
                                        "column": 35
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 4535,
                          "end": 4563,
                          "loc": {
                            "start": {
                              "line": 140,
                              "column": 6
                            },
                            "end": {
                              "line": 140,
                              "column": 34
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4535,
                            "end": 4562,
                            "loc": {
                              "start": {
                                "line": 140,
                                "column": 6
                              },
                              "end": {
                                "line": 140,
                                "column": 33
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 4535,
                              "end": 4557,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 6
                                },
                                "end": {
                                  "line": 140,
                                  "column": 28
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4535,
                                "end": 4539,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4540,
                                "end": 4557,
                                "loc": {
                                  "start": {
                                    "line": 140,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 140,
                                    "column": 28
                                  },
                                  "identifierName": "otherKeyAttribute"
                                },
                                "name": "otherKeyAttribute"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 4560,
                              "end": 4562,
                              "loc": {
                                "start": {
                                  "line": 140,
                                  "column": 31
                                },
                                "end": {
                                  "line": 140,
                                  "column": 33
                                }
                              },
                              "properties": []
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 4570,
                          "end": 4968,
                          "loc": {
                            "start": {
                              "line": 141,
                              "column": 6
                            },
                            "end": {
                              "line": 152,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 4570,
                            "end": 4967,
                            "loc": {
                              "start": {
                                "line": 141,
                                "column": 6
                              },
                              "end": {
                                "line": 152,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 4570,
                              "end": 4583,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 6
                                },
                                "end": {
                                  "line": 141,
                                  "column": 19
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 4570,
                                "end": 4574,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 4575,
                                "end": 4583,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 19
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 4586,
                              "end": 4967,
                              "loc": {
                                "start": {
                                  "line": 141,
                                  "column": 22
                                },
                                "end": {
                                  "line": 152,
                                  "column": 7
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 4586,
                                "end": 4607,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 141,
                                    "column": 43
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 4586,
                                  "end": 4598,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 34
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 4586,
                                    "end": 4590,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 22
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 26
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4591,
                                    "end": 4598,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 34
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 4599,
                                  "end": 4607,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 43
                                    },
                                    "identifierName": "otherKey"
                                  },
                                  "name": "otherKey"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "CallExpression",
                                "start": 4611,
                                "end": 4967,
                                "loc": {
                                  "start": {
                                    "line": 141,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 152,
                                    "column": 7
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 4611,
                                  "end": 4627,
                                  "loc": {
                                    "start": {
                                      "line": 141,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 141,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 4611,
                                    "end": 4616,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 52
                                      },
                                      "identifierName": "Utils"
                                    },
                                    "name": "Utils"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 4617,
                                    "end": 4627,
                                    "loc": {
                                      "start": {
                                        "line": 141,
                                        "column": 53
                                      },
                                      "end": {
                                        "line": 141,
                                        "column": 63
                                      },
                                      "identifierName": "camelizeIf"
                                    },
                                    "name": "camelizeIf"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "CallExpression",
                                    "start": 4637,
                                    "end": 4917,
                                    "loc": {
                                      "start": {
                                        "line": 142,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 150,
                                        "column": 19
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 4637,
                                      "end": 4912,
                                      "loc": {
                                        "start": {
                                          "line": 142,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 150,
                                          "column": 14
                                        }
                                      },
                                      "object": {
                                        "type": "ArrayExpression",
                                        "start": 4637,
                                        "end": 4907,
                                        "loc": {
                                          "start": {
                                            "line": 142,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 9
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "CallExpression",
                                            "start": 4649,
                                            "end": 4854,
                                            "loc": {
                                              "start": {
                                                "line": 143,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 148,
                                                "column": 11
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 4649,
                                              "end": 4668,
                                              "loc": {
                                                "start": {
                                                  "line": 143,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 143,
                                                  "column": 29
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 4649,
                                                "end": 4654,
                                                "loc": {
                                                  "start": {
                                                    "line": 143,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 143,
                                                    "column": 15
                                                  },
                                                  "identifierName": "Utils"
                                                },
                                                "name": "Utils"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4655,
                                                "end": 4668,
                                                "loc": {
                                                  "start": {
                                                    "line": 143,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 143,
                                                    "column": 29
                                                  },
                                                  "identifierName": "underscoredIf"
                                                },
                                                "name": "underscoredIf"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ConditionalExpression",
                                                "start": 4682,
                                                "end": 4797,
                                                "loc": {
                                                  "start": {
                                                    "line": 144,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 146,
                                                    "column": 47
                                                  }
                                                },
                                                "test": {
                                                  "type": "MemberExpression",
                                                  "start": 4682,
                                                  "end": 4704,
                                                  "loc": {
                                                    "start": {
                                                      "line": 144,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 144,
                                                      "column": 34
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "ThisExpression",
                                                    "start": 4682,
                                                    "end": 4686,
                                                    "loc": {
                                                      "start": {
                                                        "line": 144,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 144,
                                                        "column": 16
                                                      }
                                                    }
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4687,
                                                    "end": 4704,
                                                    "loc": {
                                                      "start": {
                                                        "line": 144,
                                                        "column": 17
                                                      },
                                                      "end": {
                                                        "line": 144,
                                                        "column": 34
                                                      },
                                                      "identifierName": "isSelfAssociation"
                                                    },
                                                    "name": "isSelfAssociation"
                                                  },
                                                  "computed": false
                                                },
                                                "consequent": {
                                                  "type": "CallExpression",
                                                  "start": 4721,
                                                  "end": 4747,
                                                  "loc": {
                                                    "start": {
                                                      "line": 145,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 145,
                                                      "column": 40
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 4721,
                                                    "end": 4738,
                                                    "loc": {
                                                      "start": {
                                                        "line": 145,
                                                        "column": 14
                                                      },
                                                      "end": {
                                                        "line": 145,
                                                        "column": 31
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 4721,
                                                      "end": 4726,
                                                      "loc": {
                                                        "start": {
                                                          "line": 145,
                                                          "column": 14
                                                        },
                                                        "end": {
                                                          "line": 145,
                                                          "column": 19
                                                        },
                                                        "identifierName": "Utils"
                                                      },
                                                      "name": "Utils"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 4727,
                                                      "end": 4738,
                                                      "loc": {
                                                        "start": {
                                                          "line": 145,
                                                          "column": 20
                                                        },
                                                        "end": {
                                                          "line": 145,
                                                          "column": 31
                                                        },
                                                        "identifierName": "singularize"
                                                      },
                                                      "name": "singularize"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "MemberExpression",
                                                      "start": 4739,
                                                      "end": 4746,
                                                      "loc": {
                                                        "start": {
                                                          "line": 145,
                                                          "column": 32
                                                        },
                                                        "end": {
                                                          "line": 145,
                                                          "column": 39
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "ThisExpression",
                                                        "start": 4739,
                                                        "end": 4743,
                                                        "loc": {
                                                          "start": {
                                                            "line": 145,
                                                            "column": 32
                                                          },
                                                          "end": {
                                                            "line": 145,
                                                            "column": 36
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 4744,
                                                        "end": 4746,
                                                        "loc": {
                                                          "start": {
                                                            "line": 145,
                                                            "column": 37
                                                          },
                                                          "end": {
                                                            "line": 145,
                                                            "column": 39
                                                          },
                                                          "identifierName": "as"
                                                        },
                                                        "name": "as"
                                                      },
                                                      "computed": false
                                                    }
                                                  ]
                                                },
                                                "alternate": {
                                                  "type": "MemberExpression",
                                                  "start": 4764,
                                                  "end": 4797,
                                                  "loc": {
                                                    "start": {
                                                      "line": 146,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 146,
                                                      "column": 47
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 4764,
                                                    "end": 4788,
                                                    "loc": {
                                                      "start": {
                                                        "line": 146,
                                                        "column": 14
                                                      },
                                                      "end": {
                                                        "line": 146,
                                                        "column": 38
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 4764,
                                                      "end": 4783,
                                                      "loc": {
                                                        "start": {
                                                          "line": 146,
                                                          "column": 14
                                                        },
                                                        "end": {
                                                          "line": 146,
                                                          "column": 33
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 4764,
                                                        "end": 4775,
                                                        "loc": {
                                                          "start": {
                                                            "line": 146,
                                                            "column": 14
                                                          },
                                                          "end": {
                                                            "line": 146,
                                                            "column": 25
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "ThisExpression",
                                                          "start": 4764,
                                                          "end": 4768,
                                                          "loc": {
                                                            "start": {
                                                              "line": 146,
                                                              "column": 14
                                                            },
                                                            "end": {
                                                              "line": 146,
                                                              "column": 18
                                                            }
                                                          }
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 4769,
                                                          "end": 4775,
                                                          "loc": {
                                                            "start": {
                                                              "line": 146,
                                                              "column": 19
                                                            },
                                                            "end": {
                                                              "line": 146,
                                                              "column": 25
                                                            },
                                                            "identifierName": "target"
                                                          },
                                                          "name": "target"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 4776,
                                                        "end": 4783,
                                                        "loc": {
                                                          "start": {
                                                            "line": 146,
                                                            "column": 26
                                                          },
                                                          "end": {
                                                            "line": 146,
                                                            "column": 33
                                                          },
                                                          "identifierName": "options"
                                                        },
                                                        "name": "options"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 4784,
                                                      "end": 4788,
                                                      "loc": {
                                                        "start": {
                                                          "line": 146,
                                                          "column": 34
                                                        },
                                                        "end": {
                                                          "line": 146,
                                                          "column": 38
                                                        },
                                                        "identifierName": "name"
                                                      },
                                                      "name": "name"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4789,
                                                    "end": 4797,
                                                    "loc": {
                                                      "start": {
                                                        "line": 146,
                                                        "column": 39
                                                      },
                                                      "end": {
                                                        "line": 146,
                                                        "column": 47
                                                      },
                                                      "identifierName": "singular"
                                                    },
                                                    "name": "singular"
                                                  },
                                                  "computed": false
                                                }
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 4811,
                                                "end": 4842,
                                                "loc": {
                                                  "start": {
                                                    "line": 147,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 147,
                                                    "column": 43
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 4811,
                                                  "end": 4830,
                                                  "loc": {
                                                    "start": {
                                                      "line": 147,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 147,
                                                      "column": 31
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 4811,
                                                    "end": 4822,
                                                    "loc": {
                                                      "start": {
                                                        "line": 147,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 147,
                                                        "column": 23
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 4811,
                                                      "end": 4815,
                                                      "loc": {
                                                        "start": {
                                                          "line": 147,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 147,
                                                          "column": 16
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 4816,
                                                      "end": 4822,
                                                      "loc": {
                                                        "start": {
                                                          "line": 147,
                                                          "column": 17
                                                        },
                                                        "end": {
                                                          "line": 147,
                                                          "column": 23
                                                        },
                                                        "identifierName": "target"
                                                      },
                                                      "name": "target"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 4823,
                                                    "end": 4830,
                                                    "loc": {
                                                      "start": {
                                                        "line": 147,
                                                        "column": 24
                                                      },
                                                      "end": {
                                                        "line": 147,
                                                        "column": 31
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 4831,
                                                  "end": 4842,
                                                  "loc": {
                                                    "start": {
                                                      "line": 147,
                                                      "column": 32
                                                    },
                                                    "end": {
                                                      "line": 147,
                                                      "column": 43
                                                    },
                                                    "identifierName": "underscored"
                                                  },
                                                  "name": "underscored"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          },
                                          {
                                            "type": "MemberExpression",
                                            "start": 4866,
                                            "end": 4897,
                                            "loc": {
                                              "start": {
                                                "line": 149,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 149,
                                                "column": 41
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 4866,
                                              "end": 4877,
                                              "loc": {
                                                "start": {
                                                  "line": 149,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 149,
                                                  "column": 21
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 4866,
                                                "end": 4870,
                                                "loc": {
                                                  "start": {
                                                    "line": 149,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 149,
                                                    "column": 14
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 4871,
                                                "end": 4877,
                                                "loc": {
                                                  "start": {
                                                    "line": 149,
                                                    "column": 15
                                                  },
                                                  "end": {
                                                    "line": 149,
                                                    "column": 21
                                                  },
                                                  "identifierName": "target"
                                                },
                                                "name": "target"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 4878,
                                              "end": 4897,
                                              "loc": {
                                                "start": {
                                                  "line": 149,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 149,
                                                  "column": 41
                                                },
                                                "identifierName": "primaryKeyAttribute"
                                              },
                                              "name": "primaryKeyAttribute"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4908,
                                        "end": 4912,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 14
                                          },
                                          "identifierName": "join"
                                        },
                                        "name": "join"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "StringLiteral",
                                        "start": 4913,
                                        "end": 4916,
                                        "loc": {
                                          "start": {
                                            "line": 150,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 150,
                                            "column": 18
                                          }
                                        },
                                        "extra": {
                                          "rawValue": "_",
                                          "raw": "'_'"
                                        },
                                        "value": "_"
                                      }
                                    ]
                                  },
                                  {
                                    "type": "UnaryExpression",
                                    "start": 4927,
                                    "end": 4959,
                                    "loc": {
                                      "start": {
                                        "line": 151,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 151,
                                        "column": 40
                                      }
                                    },
                                    "operator": "!",
                                    "prefix": true,
                                    "argument": {
                                      "type": "MemberExpression",
                                      "start": 4928,
                                      "end": 4959,
                                      "loc": {
                                        "start": {
                                          "line": 151,
                                          "column": 9
                                        },
                                        "end": {
                                          "line": 151,
                                          "column": 40
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 4928,
                                        "end": 4947,
                                        "loc": {
                                          "start": {
                                            "line": 151,
                                            "column": 9
                                          },
                                          "end": {
                                            "line": 151,
                                            "column": 28
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 4928,
                                          "end": 4939,
                                          "loc": {
                                            "start": {
                                              "line": 151,
                                              "column": 9
                                            },
                                            "end": {
                                              "line": 151,
                                              "column": 20
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 4928,
                                            "end": 4932,
                                            "loc": {
                                              "start": {
                                                "line": 151,
                                                "column": 9
                                              },
                                              "end": {
                                                "line": 151,
                                                "column": 13
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 4933,
                                            "end": 4939,
                                            "loc": {
                                              "start": {
                                                "line": 151,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 151,
                                                "column": 20
                                              },
                                              "identifierName": "target"
                                            },
                                            "name": "target"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 4940,
                                          "end": 4947,
                                          "loc": {
                                            "start": {
                                              "line": 151,
                                              "column": 21
                                            },
                                            "end": {
                                              "line": 151,
                                              "column": 28
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 4948,
                                        "end": 4959,
                                        "loc": {
                                          "start": {
                                            "line": 151,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 151,
                                            "column": 40
                                          },
                                          "identifierName": "underscored"
                                        },
                                        "name": "underscored"
                                      },
                                      "computed": false
                                    },
                                    "extra": {
                                      "parenthesizedArgument": false
                                    }
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ],
                      "directives": [],
                      "trailingComments": null
                    },
                    "trailingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * Find paired association (if exists)\n    ",
                        "start": 4980,
                        "end": 5031,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 4
                          },
                          "end": {
                            "line": 157,
                            "column": 6
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 5036,
                    "end": 5371,
                    "loc": {
                      "start": {
                        "line": 158,
                        "column": 4
                      },
                      "end": {
                        "line": 166,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 5036,
                      "end": 5370,
                      "loc": {
                        "start": {
                          "line": 158,
                          "column": 4
                        },
                        "end": {
                          "line": 166,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 5036,
                        "end": 5042,
                        "loc": {
                          "start": {
                            "line": 158,
                            "column": 4
                          },
                          "end": {
                            "line": 158,
                            "column": 10
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 5036,
                          "end": 5037,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 4
                            },
                            "end": {
                              "line": 158,
                              "column": 5
                            },
                            "identifierName": "_"
                          },
                          "name": "_",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5038,
                          "end": 5042,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 6
                            },
                            "end": {
                              "line": 158,
                              "column": 10
                            },
                            "identifierName": "each"
                          },
                          "name": "each"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 5043,
                          "end": 5067,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 11
                            },
                            "end": {
                              "line": 158,
                              "column": 35
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5043,
                            "end": 5054,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 11
                              },
                              "end": {
                                "line": 158,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5043,
                              "end": 5047,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 11
                                },
                                "end": {
                                  "line": 158,
                                  "column": 15
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5048,
                              "end": 5054,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 16
                                },
                                "end": {
                                  "line": 158,
                                  "column": 22
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5055,
                            "end": 5067,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 23
                              },
                              "end": {
                                "line": 158,
                                "column": 35
                              },
                              "identifierName": "associations"
                            },
                            "name": "associations"
                          },
                          "computed": false
                        },
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 5069,
                          "end": 5369,
                          "loc": {
                            "start": {
                              "line": 158,
                              "column": 37
                            },
                            "end": {
                              "line": 166,
                              "column": 5
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": false,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 5069,
                              "end": 5080,
                              "loc": {
                                "start": {
                                  "line": 158,
                                  "column": 37
                                },
                                "end": {
                                  "line": 158,
                                  "column": 48
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "start": 5084,
                            "end": 5369,
                            "loc": {
                              "start": {
                                "line": 158,
                                "column": 52
                              },
                              "end": {
                                "line": 166,
                                "column": 5
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 5092,
                                "end": 5152,
                                "loc": {
                                  "start": {
                                    "line": 159,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 159,
                                    "column": 66
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 5096,
                                  "end": 5143,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 57
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 5096,
                                    "end": 5123,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5096,
                                      "end": 5107,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 21
                                        },
                                        "identifierName": "association"
                                      },
                                      "name": "association"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5108,
                                      "end": 5123,
                                      "loc": {
                                        "start": {
                                          "line": 159,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 159,
                                          "column": 37
                                        },
                                        "identifierName": "associationType"
                                      },
                                      "name": "associationType"
                                    },
                                    "computed": false
                                  },
                                  "operator": "!==",
                                  "right": {
                                    "type": "StringLiteral",
                                    "start": 5128,
                                    "end": 5143,
                                    "loc": {
                                      "start": {
                                        "line": 159,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 159,
                                        "column": 57
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "BelongsToMany",
                                      "raw": "'BelongsToMany'"
                                    },
                                    "value": "BelongsToMany"
                                  }
                                },
                                "consequent": {
                                  "type": "ReturnStatement",
                                  "start": 5145,
                                  "end": 5152,
                                  "loc": {
                                    "start": {
                                      "line": 159,
                                      "column": 59
                                    },
                                    "end": {
                                      "line": 159,
                                      "column": 66
                                    }
                                  },
                                  "argument": null
                                },
                                "alternate": null
                              },
                              {
                                "type": "IfStatement",
                                "start": 5159,
                                "end": 5206,
                                "loc": {
                                  "start": {
                                    "line": 160,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 160,
                                    "column": 53
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 5163,
                                  "end": 5197,
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 44
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 5163,
                                    "end": 5181,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 5163,
                                      "end": 5174,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 21
                                        },
                                        "identifierName": "association"
                                      },
                                      "name": "association"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5175,
                                      "end": 5181,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 22
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 28
                                        },
                                        "identifierName": "target"
                                      },
                                      "name": "target"
                                    },
                                    "computed": false
                                  },
                                  "operator": "!==",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 5186,
                                    "end": 5197,
                                    "loc": {
                                      "start": {
                                        "line": 160,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 160,
                                        "column": 44
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5186,
                                      "end": 5190,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 37
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5191,
                                      "end": 5197,
                                      "loc": {
                                        "start": {
                                          "line": 160,
                                          "column": 38
                                        },
                                        "end": {
                                          "line": 160,
                                          "column": 44
                                        },
                                        "identifierName": "source"
                                      },
                                      "name": "source"
                                    },
                                    "computed": false
                                  }
                                },
                                "consequent": {
                                  "type": "ReturnStatement",
                                  "start": 5199,
                                  "end": 5206,
                                  "loc": {
                                    "start": {
                                      "line": 160,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 160,
                                      "column": 53
                                    }
                                  },
                                  "argument": null
                                },
                                "alternate": null
                              },
                              {
                                "type": "IfStatement",
                                "start": 5214,
                                "end": 5363,
                                "loc": {
                                  "start": {
                                    "line": 162,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 165,
                                    "column": 7
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 5218,
                                  "end": 5282,
                                  "loc": {
                                    "start": {
                                      "line": 162,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 162,
                                      "column": 74
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 5218,
                                    "end": 5244,
                                    "loc": {
                                      "start": {
                                        "line": 162,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 162,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5218,
                                      "end": 5238,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5218,
                                        "end": 5230,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 22
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5218,
                                          "end": 5222,
                                          "loc": {
                                            "start": {
                                              "line": 162,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 162,
                                              "column": 14
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5223,
                                          "end": 5230,
                                          "loc": {
                                            "start": {
                                              "line": 162,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 162,
                                              "column": 22
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5231,
                                        "end": 5238,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 23
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 30
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5239,
                                      "end": 5244,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 36
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  },
                                  "operator": "===",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 5249,
                                    "end": 5282,
                                    "loc": {
                                      "start": {
                                        "line": 162,
                                        "column": 41
                                      },
                                      "end": {
                                        "line": 162,
                                        "column": 74
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5249,
                                      "end": 5276,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 68
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5249,
                                        "end": 5268,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 41
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 60
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 5249,
                                          "end": 5260,
                                          "loc": {
                                            "start": {
                                              "line": 162,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 162,
                                              "column": 52
                                            },
                                            "identifierName": "association"
                                          },
                                          "name": "association"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5261,
                                          "end": 5268,
                                          "loc": {
                                            "start": {
                                              "line": 162,
                                              "column": 53
                                            },
                                            "end": {
                                              "line": 162,
                                              "column": 60
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5269,
                                        "end": 5276,
                                        "loc": {
                                          "start": {
                                            "line": 162,
                                            "column": 61
                                          },
                                          "end": {
                                            "line": 162,
                                            "column": 68
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5277,
                                      "end": 5282,
                                      "loc": {
                                        "start": {
                                          "line": 162,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 162,
                                          "column": 74
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 5284,
                                  "end": 5363,
                                  "loc": {
                                    "start": {
                                      "line": 162,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 165,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 5294,
                                      "end": 5320,
                                      "loc": {
                                        "start": {
                                          "line": 163,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 163,
                                          "column": 34
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 5294,
                                        "end": 5319,
                                        "loc": {
                                          "start": {
                                            "line": 163,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 163,
                                            "column": 33
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 5294,
                                          "end": 5305,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 19
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5294,
                                            "end": 5298,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 12
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5299,
                                            "end": 5305,
                                            "loc": {
                                              "start": {
                                                "line": 163,
                                                "column": 13
                                              },
                                              "end": {
                                                "line": 163,
                                                "column": 19
                                              },
                                              "identifierName": "paired"
                                            },
                                            "name": "paired"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "Identifier",
                                          "start": 5308,
                                          "end": 5319,
                                          "loc": {
                                            "start": {
                                              "line": 163,
                                              "column": 22
                                            },
                                            "end": {
                                              "line": 163,
                                              "column": 33
                                            },
                                            "identifierName": "association"
                                          },
                                          "name": "association"
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 5329,
                                      "end": 5355,
                                      "loc": {
                                        "start": {
                                          "line": 164,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 164,
                                          "column": 34
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 5329,
                                        "end": 5354,
                                        "loc": {
                                          "start": {
                                            "line": 164,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 164,
                                            "column": 33
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 5329,
                                          "end": 5347,
                                          "loc": {
                                            "start": {
                                              "line": 164,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 164,
                                              "column": 26
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5329,
                                            "end": 5340,
                                            "loc": {
                                              "start": {
                                                "line": 164,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 164,
                                                "column": 19
                                              },
                                              "identifierName": "association"
                                            },
                                            "name": "association"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5341,
                                            "end": 5347,
                                            "loc": {
                                              "start": {
                                                "line": 164,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 164,
                                                "column": 26
                                              },
                                              "identifierName": "paired"
                                            },
                                            "name": "paired"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "ThisExpression",
                                          "start": 5350,
                                          "end": 5354,
                                          "loc": {
                                            "start": {
                                              "line": 164,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 164,
                                              "column": 33
                                            }
                                          }
                                        }
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentBlock",
                        "value": "\n    * Find paired association (if exists)\n    ",
                        "start": 4980,
                        "end": 5031,
                        "loc": {
                          "start": {
                            "line": 155,
                            "column": 4
                          },
                          "end": {
                            "line": 157,
                            "column": 6
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "IfStatement",
                    "start": 5377,
                    "end": 5951,
                    "loc": {
                      "start": {
                        "line": 168,
                        "column": 4
                      },
                      "end": {
                        "line": 179,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 5381,
                      "end": 5419,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 8
                        },
                        "end": {
                          "line": 168,
                          "column": 46
                        }
                      },
                      "left": {
                        "type": "UnaryExpression",
                        "start": 5381,
                        "end": 5406,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 8
                          },
                          "end": {
                            "line": 168,
                            "column": 33
                          }
                        },
                        "operator": "typeof",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 5388,
                          "end": 5406,
                          "loc": {
                            "start": {
                              "line": 168,
                              "column": 15
                            },
                            "end": {
                              "line": 168,
                              "column": 33
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 5388,
                            "end": 5400,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 15
                              },
                              "end": {
                                "line": 168,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5388,
                              "end": 5392,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 15
                                },
                                "end": {
                                  "line": 168,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5393,
                              "end": 5400,
                              "loc": {
                                "start": {
                                  "line": 168,
                                  "column": 20
                                },
                                "end": {
                                  "line": 168,
                                  "column": 27
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5401,
                            "end": 5406,
                            "loc": {
                              "start": {
                                "line": 168,
                                "column": 28
                              },
                              "end": {
                                "line": 168,
                                "column": 33
                              },
                              "identifierName": "model"
                            },
                            "name": "model"
                          },
                          "computed": false
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      },
                      "operator": "===",
                      "right": {
                        "type": "StringLiteral",
                        "start": 5411,
                        "end": 5419,
                        "loc": {
                          "start": {
                            "line": 168,
                            "column": 38
                          },
                          "end": {
                            "line": 168,
                            "column": 46
                          }
                        },
                        "extra": {
                          "rawValue": "string",
                          "raw": "'string'"
                        },
                        "value": "string"
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 5421,
                      "end": 5951,
                      "loc": {
                        "start": {
                          "line": 168,
                          "column": 48
                        },
                        "end": {
                          "line": 179,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 5429,
                          "end": 5945,
                          "loc": {
                            "start": {
                              "line": 169,
                              "column": 6
                            },
                            "end": {
                              "line": 178,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 5433,
                            "end": 5478,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 10
                              },
                              "end": {
                                "line": 169,
                                "column": 55
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "CallExpression",
                              "start": 5434,
                              "end": 5478,
                              "loc": {
                                "start": {
                                  "line": 169,
                                  "column": 11
                                },
                                "end": {
                                  "line": 169,
                                  "column": 55
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 5434,
                                "end": 5458,
                                "loc": {
                                  "start": {
                                    "line": 169,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 169,
                                    "column": 35
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 5434,
                                  "end": 5448,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 25
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 5434,
                                    "end": 5438,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 11
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 15
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5439,
                                    "end": 5448,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 25
                                      },
                                      "identifierName": "sequelize"
                                    },
                                    "name": "sequelize"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 5449,
                                  "end": 5458,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 35
                                    },
                                    "identifierName": "isDefined"
                                  },
                                  "name": "isDefined"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 5459,
                                  "end": 5477,
                                  "loc": {
                                    "start": {
                                      "line": 169,
                                      "column": 36
                                    },
                                    "end": {
                                      "line": 169,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 5459,
                                    "end": 5471,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 36
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 48
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 5459,
                                      "end": 5463,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 40
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5464,
                                      "end": 5471,
                                      "loc": {
                                        "start": {
                                          "line": 169,
                                          "column": 41
                                        },
                                        "end": {
                                          "line": 169,
                                          "column": 48
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 5472,
                                    "end": 5477,
                                    "loc": {
                                      "start": {
                                        "line": 169,
                                        "column": 49
                                      },
                                      "end": {
                                        "line": 169,
                                        "column": 54
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                }
                              ]
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 5480,
                            "end": 5859,
                            "loc": {
                              "start": {
                                "line": 169,
                                "column": 57
                              },
                              "end": {
                                "line": 176,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 5490,
                                "end": 5851,
                                "loc": {
                                  "start": {
                                    "line": 170,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 175,
                                    "column": 12
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 5490,
                                  "end": 5850,
                                  "loc": {
                                    "start": {
                                      "line": 170,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 175,
                                      "column": 11
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 5490,
                                    "end": 5508,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 170,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5490,
                                      "end": 5502,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5490,
                                        "end": 5494,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5495,
                                        "end": 5502,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 20
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5503,
                                      "end": 5508,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 26
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 5511,
                                    "end": 5850,
                                    "loc": {
                                      "start": {
                                        "line": 170,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 175,
                                        "column": 11
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5511,
                                      "end": 5532,
                                      "loc": {
                                        "start": {
                                          "line": 170,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 170,
                                          "column": 50
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5511,
                                        "end": 5525,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 43
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5511,
                                          "end": 5515,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5516,
                                          "end": 5525,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 43
                                            },
                                            "identifierName": "sequelize"
                                          },
                                          "name": "sequelize"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5526,
                                        "end": 5532,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 50
                                          },
                                          "identifierName": "define"
                                        },
                                        "name": "define"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 5533,
                                        "end": 5551,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 51
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 69
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5533,
                                          "end": 5545,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 51
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 63
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5533,
                                            "end": 5537,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 51
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 55
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5538,
                                            "end": 5545,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 63
                                              },
                                              "identifierName": "through"
                                            },
                                            "name": "through"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5546,
                                          "end": 5551,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 64
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 69
                                            },
                                            "identifierName": "model"
                                          },
                                          "name": "model"
                                        },
                                        "computed": false
                                      },
                                      {
                                        "type": "ObjectExpression",
                                        "start": 5553,
                                        "end": 5555,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 170,
                                            "column": 73
                                          }
                                        },
                                        "properties": []
                                      },
                                      {
                                        "type": "CallExpression",
                                        "start": 5557,
                                        "end": 5849,
                                        "loc": {
                                          "start": {
                                            "line": 170,
                                            "column": 75
                                          },
                                          "end": {
                                            "line": 175,
                                            "column": 10
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 5557,
                                          "end": 5565,
                                          "loc": {
                                            "start": {
                                              "line": 170,
                                              "column": 75
                                            },
                                            "end": {
                                              "line": 170,
                                              "column": 83
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 5557,
                                            "end": 5558,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 75
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 76
                                              },
                                              "identifierName": "_"
                                            },
                                            "name": "_"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5559,
                                            "end": 5565,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 77
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 83
                                              },
                                              "identifierName": "extend"
                                            },
                                            "name": "extend"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 5566,
                                            "end": 5578,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 84
                                              },
                                              "end": {
                                                "line": 170,
                                                "column": 96
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 5566,
                                              "end": 5570,
                                              "loc": {
                                                "start": {
                                                  "line": 170,
                                                  "column": 84
                                                },
                                                "end": {
                                                  "line": 170,
                                                  "column": 88
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 5571,
                                              "end": 5578,
                                              "loc": {
                                                "start": {
                                                  "line": 170,
                                                  "column": 89
                                                },
                                                "end": {
                                                  "line": 170,
                                                  "column": 96
                                                },
                                                "identifierName": "options"
                                              },
                                              "name": "options"
                                            },
                                            "computed": false
                                          },
                                          {
                                            "type": "ObjectExpression",
                                            "start": 5580,
                                            "end": 5848,
                                            "loc": {
                                              "start": {
                                                "line": 170,
                                                "column": 98
                                              },
                                              "end": {
                                                "line": 175,
                                                "column": 9
                                              }
                                            },
                                            "properties": [
                                              {
                                                "type": "ObjectProperty",
                                                "start": 5592,
                                                "end": 5621,
                                                "loc": {
                                                  "start": {
                                                    "line": 171,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 171,
                                                    "column": 39
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 5592,
                                                  "end": 5601,
                                                  "loc": {
                                                    "start": {
                                                      "line": 171,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 171,
                                                      "column": 19
                                                    },
                                                    "identifierName": "tableName"
                                                  },
                                                  "name": "tableName"
                                                },
                                                "value": {
                                                  "type": "MemberExpression",
                                                  "start": 5603,
                                                  "end": 5621,
                                                  "loc": {
                                                    "start": {
                                                      "line": 171,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 171,
                                                      "column": 39
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 5603,
                                                    "end": 5615,
                                                    "loc": {
                                                      "start": {
                                                        "line": 171,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 171,
                                                        "column": 33
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "ThisExpression",
                                                      "start": 5603,
                                                      "end": 5607,
                                                      "loc": {
                                                        "start": {
                                                          "line": 171,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 171,
                                                          "column": 25
                                                        }
                                                      }
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 5608,
                                                      "end": 5615,
                                                      "loc": {
                                                        "start": {
                                                          "line": 171,
                                                          "column": 26
                                                        },
                                                        "end": {
                                                          "line": 171,
                                                          "column": 33
                                                        },
                                                        "identifierName": "through"
                                                      },
                                                      "name": "through"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 5616,
                                                    "end": 5621,
                                                    "loc": {
                                                      "start": {
                                                        "line": 171,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 171,
                                                        "column": 39
                                                      },
                                                      "identifierName": "model"
                                                    },
                                                    "name": "model"
                                                  },
                                                  "computed": false
                                                }
                                              },
                                              {
                                                "type": "ObjectProperty",
                                                "start": 5633,
                                                "end": 5644,
                                                "loc": {
                                                  "start": {
                                                    "line": 172,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 172,
                                                    "column": 21
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 5633,
                                                  "end": 5640,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 17
                                                    },
                                                    "identifierName": "indexes"
                                                  },
                                                  "name": "indexes"
                                                },
                                                "value": {
                                                  "type": "ArrayExpression",
                                                  "start": 5642,
                                                  "end": 5644,
                                                  "loc": {
                                                    "start": {
                                                      "line": 172,
                                                      "column": 19
                                                    },
                                                    "end": {
                                                      "line": 172,
                                                      "column": 21
                                                    }
                                                  },
                                                  "elements": []
                                                }
                                              },
                                              {
                                                "type": "ObjectProperty",
                                                "start": 5710,
                                                "end": 5725,
                                                "loc": {
                                                  "start": {
                                                    "line": 173,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 173,
                                                    "column": 25
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 5710,
                                                  "end": 5718,
                                                  "loc": {
                                                    "start": {
                                                      "line": 173,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 173,
                                                      "column": 18
                                                    },
                                                    "identifierName": "paranoid"
                                                  },
                                                  "name": "paranoid",
                                                  "leadingComments": null
                                                },
                                                "value": {
                                                  "type": "BooleanLiteral",
                                                  "start": 5720,
                                                  "end": 5725,
                                                  "loc": {
                                                    "start": {
                                                      "line": 173,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 173,
                                                      "column": 25
                                                    }
                                                  },
                                                  "value": false
                                                },
                                                "leadingComments": [
                                                  {
                                                    "type": "CommentLine",
                                                    "value": "we don't want indexes here (as referenced in #2416)",
                                                    "start": 5646,
                                                    "end": 5699,
                                                    "loc": {
                                                      "start": {
                                                        "line": 172,
                                                        "column": 23
                                                      },
                                                      "end": {
                                                        "line": 172,
                                                        "column": 76
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "type": "ObjectProperty",
                                                "start": 5783,
                                                "end": 5795,
                                                "loc": {
                                                  "start": {
                                                    "line": 174,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 174,
                                                    "column": 22
                                                  }
                                                },
                                                "method": false,
                                                "shorthand": false,
                                                "computed": false,
                                                "key": {
                                                  "type": "Identifier",
                                                  "start": 5783,
                                                  "end": 5791,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 18
                                                    },
                                                    "identifierName": "validate"
                                                  },
                                                  "name": "validate",
                                                  "leadingComments": null
                                                },
                                                "value": {
                                                  "type": "ObjectExpression",
                                                  "start": 5793,
                                                  "end": 5795,
                                                  "loc": {
                                                    "start": {
                                                      "line": 174,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 174,
                                                      "column": 22
                                                    }
                                                  },
                                                  "properties": [],
                                                  "leadingComments": null,
                                                  "trailingComments": null
                                                },
                                                "leadingComments": [
                                                  {
                                                    "type": "CommentLine",
                                                    "value": " A paranoid join table does not make sense",
                                                    "start": 5728,
                                                    "end": 5772,
                                                    "loc": {
                                                      "start": {
                                                        "line": 173,
                                                        "column": 28
                                                      },
                                                      "end": {
                                                        "line": 173,
                                                        "column": 72
                                                      }
                                                    }
                                                  }
                                                ],
                                                "trailingComments": [
                                                  {
                                                    "type": "CommentLine",
                                                    "value": " Don't propagate model-level validations",
                                                    "start": 5796,
                                                    "end": 5838,
                                                    "loc": {
                                                      "start": {
                                                        "line": 174,
                                                        "column": 23
                                                      },
                                                      "end": {
                                                        "line": 174,
                                                        "column": 65
                                                      }
                                                    }
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 5865,
                            "end": 5945,
                            "loc": {
                              "start": {
                                "line": 176,
                                "column": 13
                              },
                              "end": {
                                "line": 178,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 5875,
                                "end": 5937,
                                "loc": {
                                  "start": {
                                    "line": 177,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 177,
                                    "column": 70
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 5875,
                                  "end": 5936,
                                  "loc": {
                                    "start": {
                                      "line": 177,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 177,
                                      "column": 69
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 5875,
                                    "end": 5893,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 26
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 5875,
                                      "end": 5887,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 20
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 5875,
                                        "end": 5879,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5880,
                                        "end": 5887,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 20
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 5888,
                                      "end": 5893,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 26
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 5896,
                                    "end": 5936,
                                    "loc": {
                                      "start": {
                                        "line": 177,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 177,
                                        "column": 69
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 5896,
                                      "end": 5916,
                                      "loc": {
                                        "start": {
                                          "line": 177,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 177,
                                          "column": 49
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 5896,
                                        "end": 5910,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 43
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 5896,
                                          "end": 5900,
                                          "loc": {
                                            "start": {
                                              "line": 177,
                                              "column": 29
                                            },
                                            "end": {
                                              "line": 177,
                                              "column": 33
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5901,
                                          "end": 5910,
                                          "loc": {
                                            "start": {
                                              "line": 177,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 177,
                                              "column": 43
                                            },
                                            "identifierName": "sequelize"
                                          },
                                          "name": "sequelize"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 5911,
                                        "end": 5916,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 44
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 49
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 5917,
                                        "end": 5935,
                                        "loc": {
                                          "start": {
                                            "line": 177,
                                            "column": 50
                                          },
                                          "end": {
                                            "line": 177,
                                            "column": 68
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 5917,
                                          "end": 5929,
                                          "loc": {
                                            "start": {
                                              "line": 177,
                                              "column": 50
                                            },
                                            "end": {
                                              "line": 177,
                                              "column": 62
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 5917,
                                            "end": 5921,
                                            "loc": {
                                              "start": {
                                                "line": 177,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 177,
                                                "column": 54
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 5922,
                                            "end": 5929,
                                            "loc": {
                                              "start": {
                                                "line": 177,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 177,
                                                "column": 62
                                              },
                                              "identifierName": "through"
                                            },
                                            "name": "through"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 5930,
                                          "end": 5935,
                                          "loc": {
                                            "start": {
                                              "line": 177,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 177,
                                              "column": 68
                                            },
                                            "identifierName": "model"
                                          },
                                          "name": "model"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 5957,
                    "end": 6115,
                    "loc": {
                      "start": {
                        "line": 181,
                        "column": 4
                      },
                      "end": {
                        "line": 183,
                        "column": 8
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 5957,
                      "end": 6114,
                      "loc": {
                        "start": {
                          "line": 181,
                          "column": 4
                        },
                        "end": {
                          "line": 183,
                          "column": 7
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 5957,
                        "end": 5969,
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 4
                          },
                          "end": {
                            "line": 181,
                            "column": 16
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 5957,
                          "end": 5961,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 4
                            },
                            "end": {
                              "line": 181,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 5962,
                          "end": 5969,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 9
                            },
                            "end": {
                              "line": 181,
                              "column": 16
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 5972,
                        "end": 6114,
                        "loc": {
                          "start": {
                            "line": 181,
                            "column": 19
                          },
                          "end": {
                            "line": 183,
                            "column": 7
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 5972,
                          "end": 5985,
                          "loc": {
                            "start": {
                              "line": 181,
                              "column": 19
                            },
                            "end": {
                              "line": 181,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 5972,
                            "end": 5978,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 19
                              },
                              "end": {
                                "line": 181,
                                "column": 25
                              },
                              "identifierName": "Object"
                            },
                            "name": "Object"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 5979,
                            "end": 5985,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 26
                              },
                              "end": {
                                "line": 181,
                                "column": 32
                              },
                              "identifierName": "assign"
                            },
                            "name": "assign"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 5986,
                            "end": 5998,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 33
                              },
                              "end": {
                                "line": 181,
                                "column": 45
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 5986,
                              "end": 5990,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 33
                                },
                                "end": {
                                  "line": 181,
                                  "column": 37
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 5991,
                              "end": 5998,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 38
                                },
                                "end": {
                                  "line": 181,
                                  "column": 45
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "computed": false
                          },
                          {
                            "type": "CallExpression",
                            "start": 6000,
                            "end": 6113,
                            "loc": {
                              "start": {
                                "line": 181,
                                "column": 47
                              },
                              "end": {
                                "line": 183,
                                "column": 6
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 6000,
                              "end": 6006,
                              "loc": {
                                "start": {
                                  "line": 181,
                                  "column": 47
                                },
                                "end": {
                                  "line": 181,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 6000,
                                "end": 6001,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 47
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 48
                                  },
                                  "identifierName": "_"
                                },
                                "name": "_"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6002,
                                "end": 6006,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 53
                                  },
                                  "identifierName": "pick"
                                },
                                "name": "pick"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 6007,
                                "end": 6033,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 181,
                                    "column": 80
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 6007,
                                  "end": 6025,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 72
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 6007,
                                    "end": 6019,
                                    "loc": {
                                      "start": {
                                        "line": 181,
                                        "column": 54
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 66
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6007,
                                      "end": 6011,
                                      "loc": {
                                        "start": {
                                          "line": 181,
                                          "column": 54
                                        },
                                        "end": {
                                          "line": 181,
                                          "column": 58
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6012,
                                      "end": 6019,
                                      "loc": {
                                        "start": {
                                          "line": 181,
                                          "column": 59
                                        },
                                        "end": {
                                          "line": 181,
                                          "column": 66
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6020,
                                    "end": 6025,
                                    "loc": {
                                      "start": {
                                        "line": 181,
                                        "column": 67
                                      },
                                      "end": {
                                        "line": 181,
                                        "column": 72
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6026,
                                  "end": 6033,
                                  "loc": {
                                    "start": {
                                      "line": 181,
                                      "column": 73
                                    },
                                    "end": {
                                      "line": 181,
                                      "column": 80
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "computed": false
                              },
                              {
                                "type": "ArrayExpression",
                                "start": 6035,
                                "end": 6112,
                                "loc": {
                                  "start": {
                                    "line": 181,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 183,
                                    "column": 5
                                  }
                                },
                                "elements": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 6043,
                                    "end": 6055,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 18
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "timestamps",
                                      "raw": "'timestamps'"
                                    },
                                    "value": "timestamps"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 6057,
                                    "end": 6068,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 31
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "createdAt",
                                      "raw": "'createdAt'"
                                    },
                                    "value": "createdAt"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 6070,
                                    "end": 6081,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 44
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "updatedAt",
                                      "raw": "'updatedAt'"
                                    },
                                    "value": "updatedAt"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 6083,
                                    "end": 6094,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 46
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 57
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "deletedAt",
                                      "raw": "'deletedAt'"
                                    },
                                    "value": "deletedAt"
                                  },
                                  {
                                    "type": "StringLiteral",
                                    "start": 6096,
                                    "end": 6106,
                                    "loc": {
                                      "start": {
                                        "line": 182,
                                        "column": 59
                                      },
                                      "end": {
                                        "line": 182,
                                        "column": 69
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "paranoid",
                                      "raw": "'paranoid'"
                                    },
                                    "value": "paranoid"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 6121,
                    "end": 6709,
                    "loc": {
                      "start": {
                        "line": 185,
                        "column": 4
                      },
                      "end": {
                        "line": 198,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 6125,
                      "end": 6136,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 8
                        },
                        "end": {
                          "line": 185,
                          "column": 19
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 6125,
                        "end": 6129,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 8
                          },
                          "end": {
                            "line": 185,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6130,
                        "end": 6136,
                        "loc": {
                          "start": {
                            "line": 185,
                            "column": 13
                          },
                          "end": {
                            "line": 185,
                            "column": 19
                          },
                          "identifierName": "paired"
                        },
                        "name": "paired"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 6138,
                      "end": 6709,
                      "loc": {
                        "start": {
                          "line": 185,
                          "column": 21
                        },
                        "end": {
                          "line": 198,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 6146,
                          "end": 6229,
                          "loc": {
                            "start": {
                              "line": 186,
                              "column": 6
                            },
                            "end": {
                              "line": 188,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 6150,
                            "end": 6170,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 10
                              },
                              "end": {
                                "line": 186,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 6150,
                              "end": 6154,
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 10
                                },
                                "end": {
                                  "line": 186,
                                  "column": 14
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6155,
                              "end": 6170,
                              "loc": {
                                "start": {
                                  "line": 186,
                                  "column": 15
                                },
                                "end": {
                                  "line": 186,
                                  "column": 30
                                },
                                "identifierName": "otherKeyDefault"
                              },
                              "name": "otherKeyDefault"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 6172,
                            "end": 6229,
                            "loc": {
                              "start": {
                                "line": 186,
                                "column": 32
                              },
                              "end": {
                                "line": 188,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 6182,
                                "end": 6221,
                                "loc": {
                                  "start": {
                                    "line": 187,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 187,
                                    "column": 47
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 6182,
                                  "end": 6220,
                                  "loc": {
                                    "start": {
                                      "line": 187,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 187,
                                      "column": 46
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 6182,
                                    "end": 6195,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 21
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6182,
                                      "end": 6186,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 12
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6187,
                                      "end": 6195,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 21
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 6198,
                                    "end": 6220,
                                    "loc": {
                                      "start": {
                                        "line": 187,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 187,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6198,
                                      "end": 6209,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 35
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6198,
                                        "end": 6202,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 24
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 28
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6203,
                                        "end": 6209,
                                        "loc": {
                                          "start": {
                                            "line": 187,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 187,
                                            "column": 35
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6210,
                                      "end": 6220,
                                      "loc": {
                                        "start": {
                                          "line": 187,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 187,
                                          "column": 46
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 6236,
                          "end": 6703,
                          "loc": {
                            "start": {
                              "line": 189,
                              "column": 6
                            },
                            "end": {
                              "line": 197,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 6240,
                            "end": 6267,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 10
                              },
                              "end": {
                                "line": 189,
                                "column": 37
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6240,
                              "end": 6251,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 10
                                },
                                "end": {
                                  "line": 189,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6240,
                                "end": 6244,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 14
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6245,
                                "end": 6251,
                                "loc": {
                                  "start": {
                                    "line": 189,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 189,
                                    "column": 21
                                  },
                                  "identifierName": "paired"
                                },
                                "name": "paired"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6252,
                              "end": 6267,
                              "loc": {
                                "start": {
                                  "line": 189,
                                  "column": 22
                                },
                                "end": {
                                  "line": 189,
                                  "column": 37
                                },
                                "identifierName": "otherKeyDefault"
                              },
                              "name": "otherKeyDefault"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 6269,
                            "end": 6703,
                            "loc": {
                              "start": {
                                "line": 189,
                                "column": 39
                              },
                              "end": {
                                "line": 197,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 6409,
                                "end": 6539,
                                "loc": {
                                  "start": {
                                    "line": 191,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 193,
                                    "column": 9
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 6413,
                                  "end": 6453,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 191,
                                      "column": 52
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 6413,
                                    "end": 6433,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 32
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6413,
                                      "end": 6424,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 23
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6413,
                                        "end": 6417,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 16
                                          }
                                        },
                                        "leadingComments": null
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6418,
                                        "end": 6424,
                                        "loc": {
                                          "start": {
                                            "line": 191,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 191,
                                            "column": 23
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false,
                                      "leadingComments": null
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6425,
                                      "end": 6433,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 32
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false,
                                    "leadingComments": null
                                  },
                                  "operator": "!==",
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 6438,
                                    "end": 6453,
                                    "loc": {
                                      "start": {
                                        "line": 191,
                                        "column": 37
                                      },
                                      "end": {
                                        "line": 191,
                                        "column": 52
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6438,
                                      "end": 6442,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 37
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 41
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6443,
                                      "end": 6453,
                                      "loc": {
                                        "start": {
                                          "line": 191,
                                          "column": 42
                                        },
                                        "end": {
                                          "line": 191,
                                          "column": 52
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  },
                                  "leadingComments": null
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 6455,
                                  "end": 6539,
                                  "loc": {
                                    "start": {
                                      "line": 191,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 193,
                                      "column": 9
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 6467,
                                      "end": 6529,
                                      "loc": {
                                        "start": {
                                          "line": 192,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 192,
                                          "column": 72
                                        }
                                      },
                                      "expression": {
                                        "type": "UnaryExpression",
                                        "start": 6467,
                                        "end": 6528,
                                        "loc": {
                                          "start": {
                                            "line": 192,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 192,
                                            "column": 71
                                          }
                                        },
                                        "operator": "delete",
                                        "prefix": true,
                                        "argument": {
                                          "type": "MemberExpression",
                                          "start": 6474,
                                          "end": 6528,
                                          "loc": {
                                            "start": {
                                              "line": 192,
                                              "column": 17
                                            },
                                            "end": {
                                              "line": 192,
                                              "column": 71
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 6474,
                                            "end": 6506,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 49
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 6474,
                                              "end": 6492,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 35
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 6474,
                                                "end": 6486,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 29
                                                  }
                                                },
                                                "object": {
                                                  "type": "ThisExpression",
                                                  "start": 6474,
                                                  "end": 6478,
                                                  "loc": {
                                                    "start": {
                                                      "line": 192,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 192,
                                                      "column": 21
                                                    }
                                                  }
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 6479,
                                                  "end": 6486,
                                                  "loc": {
                                                    "start": {
                                                      "line": 192,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 192,
                                                      "column": 29
                                                    },
                                                    "identifierName": "through"
                                                  },
                                                  "name": "through"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6487,
                                                "end": 6492,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 35
                                                  },
                                                  "identifierName": "model"
                                                },
                                                "name": "model"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6493,
                                              "end": 6506,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 49
                                                },
                                                "identifierName": "rawAttributes"
                                              },
                                              "name": "rawAttributes"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "MemberExpression",
                                            "start": 6507,
                                            "end": 6527,
                                            "loc": {
                                              "start": {
                                                "line": 192,
                                                "column": 50
                                              },
                                              "end": {
                                                "line": 192,
                                                "column": 70
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 6507,
                                              "end": 6518,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 50
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 61
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 6507,
                                                "end": 6511,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 50
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 54
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 6512,
                                                "end": 6518,
                                                "loc": {
                                                  "start": {
                                                    "line": 192,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 192,
                                                    "column": 61
                                                  },
                                                  "identifierName": "paired"
                                                },
                                                "name": "paired"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 6519,
                                              "end": 6527,
                                              "loc": {
                                                "start": {
                                                  "line": 192,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 192,
                                                  "column": 70
                                                },
                                                "identifierName": "otherKey"
                                              },
                                              "name": "otherKey"
                                            },
                                            "computed": false
                                          },
                                          "computed": true
                                        },
                                        "extra": {
                                          "parenthesizedArgument": false
                                        }
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null,
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " If paired otherKey was inferred we should make sure to clean it up before adding a new one that matches the foreignKey",
                                    "start": 6279,
                                    "end": 6400,
                                    "loc": {
                                      "start": {
                                        "line": 190,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 190,
                                        "column": 129
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 6548,
                                "end": 6587,
                                "loc": {
                                  "start": {
                                    "line": 194,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 194,
                                    "column": 47
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 6548,
                                  "end": 6586,
                                  "loc": {
                                    "start": {
                                      "line": 194,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 194,
                                      "column": 46
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 6548,
                                    "end": 6568,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6548,
                                      "end": 6559,
                                      "loc": {
                                        "start": {
                                          "line": 194,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 194,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6548,
                                        "end": 6552,
                                        "loc": {
                                          "start": {
                                            "line": 194,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 194,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6553,
                                        "end": 6559,
                                        "loc": {
                                          "start": {
                                            "line": 194,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 194,
                                            "column": 19
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6560,
                                      "end": 6568,
                                      "loc": {
                                        "start": {
                                          "line": 194,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 194,
                                          "column": 28
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 6571,
                                    "end": 6586,
                                    "loc": {
                                      "start": {
                                        "line": 194,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 194,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6571,
                                      "end": 6575,
                                      "loc": {
                                        "start": {
                                          "line": 194,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 194,
                                          "column": 35
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6576,
                                      "end": 6586,
                                      "loc": {
                                        "start": {
                                          "line": 194,
                                          "column": 36
                                        },
                                        "end": {
                                          "line": 194,
                                          "column": 46
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 6596,
                                "end": 6644,
                                "loc": {
                                  "start": {
                                    "line": 195,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 195,
                                    "column": 56
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 6596,
                                  "end": 6643,
                                  "loc": {
                                    "start": {
                                      "line": 195,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 195,
                                      "column": 55
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 6596,
                                    "end": 6625,
                                    "loc": {
                                      "start": {
                                        "line": 195,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 195,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6596,
                                      "end": 6607,
                                      "loc": {
                                        "start": {
                                          "line": 195,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 195,
                                          "column": 19
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6596,
                                        "end": 6600,
                                        "loc": {
                                          "start": {
                                            "line": 195,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 195,
                                            "column": 12
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6601,
                                        "end": 6607,
                                        "loc": {
                                          "start": {
                                            "line": 195,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 195,
                                            "column": 19
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6608,
                                      "end": 6625,
                                      "loc": {
                                        "start": {
                                          "line": 195,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 195,
                                          "column": 37
                                        },
                                        "identifierName": "foreignIdentifier"
                                      },
                                      "name": "foreignIdentifier"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "MemberExpression",
                                    "start": 6628,
                                    "end": 6643,
                                    "loc": {
                                      "start": {
                                        "line": 195,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 195,
                                        "column": 55
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6628,
                                      "end": 6632,
                                      "loc": {
                                        "start": {
                                          "line": 195,
                                          "column": 40
                                        },
                                        "end": {
                                          "line": 195,
                                          "column": 44
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6633,
                                      "end": 6643,
                                      "loc": {
                                        "start": {
                                          "line": 195,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 195,
                                          "column": 55
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  }
                                }
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 6653,
                                "end": 6695,
                                "loc": {
                                  "start": {
                                    "line": 196,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 196,
                                    "column": 50
                                  }
                                },
                                "expression": {
                                  "type": "UnaryExpression",
                                  "start": 6653,
                                  "end": 6694,
                                  "loc": {
                                    "start": {
                                      "line": 196,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 196,
                                      "column": 49
                                    }
                                  },
                                  "operator": "delete",
                                  "prefix": true,
                                  "argument": {
                                    "type": "MemberExpression",
                                    "start": 6660,
                                    "end": 6694,
                                    "loc": {
                                      "start": {
                                        "line": 196,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 196,
                                        "column": 49
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 6660,
                                      "end": 6671,
                                      "loc": {
                                        "start": {
                                          "line": 196,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 196,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 6660,
                                        "end": 6664,
                                        "loc": {
                                          "start": {
                                            "line": 196,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 196,
                                            "column": 19
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 6665,
                                        "end": 6671,
                                        "loc": {
                                          "start": {
                                            "line": 196,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 196,
                                            "column": 26
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6672,
                                      "end": 6694,
                                      "loc": {
                                        "start": {
                                          "line": 196,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 196,
                                          "column": 49
                                        },
                                        "identifierName": "foreignIdentifierField"
                                      },
                                      "name": "foreignIdentifierField"
                                    },
                                    "computed": false
                                  },
                                  "extra": {
                                    "parenthesizedArgument": false
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 6715,
                    "end": 6786,
                    "loc": {
                      "start": {
                        "line": 200,
                        "column": 4
                      },
                      "end": {
                        "line": 202,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 6719,
                      "end": 6731,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 8
                        },
                        "end": {
                          "line": 200,
                          "column": 20
                        }
                      },
                      "object": {
                        "type": "ThisExpression",
                        "start": 6719,
                        "end": 6723,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 8
                          },
                          "end": {
                            "line": 200,
                            "column": 12
                          }
                        }
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 6724,
                        "end": 6731,
                        "loc": {
                          "start": {
                            "line": 200,
                            "column": 13
                          },
                          "end": {
                            "line": 200,
                            "column": 20
                          },
                          "identifierName": "through"
                        },
                        "name": "through"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 6733,
                      "end": 6786,
                      "loc": {
                        "start": {
                          "line": 200,
                          "column": 22
                        },
                        "end": {
                          "line": 202,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 6741,
                          "end": 6780,
                          "loc": {
                            "start": {
                              "line": 201,
                              "column": 6
                            },
                            "end": {
                              "line": 201,
                              "column": 45
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 6741,
                            "end": 6779,
                            "loc": {
                              "start": {
                                "line": 201,
                                "column": 6
                              },
                              "end": {
                                "line": 201,
                                "column": 44
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 6741,
                              "end": 6758,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 6
                                },
                                "end": {
                                  "line": 201,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6741,
                                "end": 6745,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 10
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6746,
                                "end": 6758,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 23
                                  },
                                  "identifierName": "throughModel"
                                },
                                "name": "throughModel"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "MemberExpression",
                              "start": 6761,
                              "end": 6779,
                              "loc": {
                                "start": {
                                  "line": 201,
                                  "column": 26
                                },
                                "end": {
                                  "line": 201,
                                  "column": 44
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6761,
                                "end": 6773,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 26
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6761,
                                  "end": 6765,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 30
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6766,
                                  "end": 6773,
                                  "loc": {
                                    "start": {
                                      "line": 201,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 201,
                                      "column": 38
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6774,
                                "end": 6779,
                                "loc": {
                                  "start": {
                                    "line": 201,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 201,
                                    "column": 44
                                  },
                                  "identifierName": "model"
                                },
                                "name": "model"
                              },
                              "computed": false
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 6792,
                    "end": 6941,
                    "loc": {
                      "start": {
                        "line": 204,
                        "column": 4
                      },
                      "end": {
                        "line": 204,
                        "column": 153
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 6792,
                      "end": 6940,
                      "loc": {
                        "start": {
                          "line": 204,
                          "column": 4
                        },
                        "end": {
                          "line": 204,
                          "column": 152
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 6792,
                        "end": 6814,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 4
                          },
                          "end": {
                            "line": 204,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 6792,
                          "end": 6804,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 4
                            },
                            "end": {
                              "line": 204,
                              "column": 16
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6792,
                            "end": 6796,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 4
                              },
                              "end": {
                                "line": 204,
                                "column": 8
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6797,
                            "end": 6804,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 9
                              },
                              "end": {
                                "line": 204,
                                "column": 16
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6805,
                          "end": 6814,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 17
                            },
                            "end": {
                              "line": 204,
                              "column": 26
                            },
                            "identifierName": "tableName"
                          },
                          "name": "tableName"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "AssignmentExpression",
                        "start": 6817,
                        "end": 6940,
                        "loc": {
                          "start": {
                            "line": 204,
                            "column": 29
                          },
                          "end": {
                            "line": 204,
                            "column": 152
                          }
                        },
                        "operator": "=",
                        "left": {
                          "type": "MemberExpression",
                          "start": 6817,
                          "end": 6834,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 29
                            },
                            "end": {
                              "line": 204,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 6817,
                            "end": 6821,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 29
                              },
                              "end": {
                                "line": 204,
                                "column": 33
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 6822,
                            "end": 6834,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 34
                              },
                              "end": {
                                "line": 204,
                                "column": 46
                              },
                              "identifierName": "combinedName"
                            },
                            "name": "combinedName"
                          },
                          "computed": false
                        },
                        "right": {
                          "type": "ConditionalExpression",
                          "start": 6838,
                          "end": 6939,
                          "loc": {
                            "start": {
                              "line": 204,
                              "column": 50
                            },
                            "end": {
                              "line": 204,
                              "column": 151
                            }
                          },
                          "test": {
                            "type": "BinaryExpression",
                            "start": 6838,
                            "end": 6887,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 50
                              },
                              "end": {
                                "line": 204,
                                "column": 99
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 6838,
                              "end": 6856,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 50
                                },
                                "end": {
                                  "line": 204,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6838,
                                "end": 6850,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 50
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 62
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6838,
                                  "end": 6842,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 50
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 54
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6843,
                                  "end": 6850,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 62
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6851,
                                "end": 6856,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 68
                                  },
                                  "identifierName": "model"
                                },
                                "name": "model"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "CallExpression",
                              "start": 6861,
                              "end": 6887,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 73
                                },
                                "end": {
                                  "line": 204,
                                  "column": 99
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 6861,
                                "end": 6867,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 73
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 79
                                  },
                                  "identifierName": "Object"
                                },
                                "name": "Object"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 6868,
                                  "end": 6886,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 80
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 98
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 6868,
                                    "end": 6880,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 80
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 92
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 6868,
                                      "end": 6872,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 80
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 84
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 6873,
                                      "end": 6880,
                                      "loc": {
                                        "start": {
                                          "line": 204,
                                          "column": 85
                                        },
                                        "end": {
                                          "line": 204,
                                          "column": 92
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 6881,
                                    "end": 6886,
                                    "loc": {
                                      "start": {
                                        "line": 204,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 204,
                                        "column": 98
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          },
                          "consequent": {
                            "type": "MemberExpression",
                            "start": 6890,
                            "end": 6918,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 102
                              },
                              "end": {
                                "line": 204,
                                "column": 130
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6890,
                              "end": 6908,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 102
                                },
                                "end": {
                                  "line": 204,
                                  "column": 120
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 6890,
                                "end": 6902,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 102
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 114
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 6890,
                                  "end": 6894,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 102
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 106
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 6895,
                                  "end": 6902,
                                  "loc": {
                                    "start": {
                                      "line": 204,
                                      "column": 107
                                    },
                                    "end": {
                                      "line": 204,
                                      "column": 114
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6903,
                                "end": 6908,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 115
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 120
                                  },
                                  "identifierName": "model"
                                },
                                "name": "model"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6909,
                              "end": 6918,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 121
                                },
                                "end": {
                                  "line": 204,
                                  "column": 130
                                },
                                "identifierName": "tableName"
                              },
                              "name": "tableName"
                            },
                            "computed": false
                          },
                          "alternate": {
                            "type": "MemberExpression",
                            "start": 6921,
                            "end": 6939,
                            "loc": {
                              "start": {
                                "line": 204,
                                "column": 133
                              },
                              "end": {
                                "line": 204,
                                "column": 151
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 6921,
                              "end": 6933,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 133
                                },
                                "end": {
                                  "line": 204,
                                  "column": 145
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 6921,
                                "end": 6925,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 133
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 137
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 6926,
                                "end": 6933,
                                "loc": {
                                  "start": {
                                    "line": 204,
                                    "column": 138
                                  },
                                  "end": {
                                    "line": 204,
                                    "column": 145
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 6934,
                              "end": 6939,
                              "loc": {
                                "start": {
                                  "line": 204,
                                  "column": 146
                                },
                                "end": {
                                  "line": 204,
                                  "column": 151
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "extra": {
                            "parenthesized": true,
                            "parenStart": 6837
                          }
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 6947,
                    "end": 6982,
                    "loc": {
                      "start": {
                        "line": 206,
                        "column": 4
                      },
                      "end": {
                        "line": 206,
                        "column": 39
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 6947,
                      "end": 6981,
                      "loc": {
                        "start": {
                          "line": 206,
                          "column": 4
                        },
                        "end": {
                          "line": 206,
                          "column": 38
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 6947,
                        "end": 6971,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 4
                          },
                          "end": {
                            "line": 206,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 6947,
                          "end": 6951,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 4
                            },
                            "end": {
                              "line": 206,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6952,
                          "end": 6971,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 9
                            },
                            "end": {
                              "line": 206,
                              "column": 28
                            },
                            "identifierName": "associationAccessor"
                          },
                          "name": "associationAccessor"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 6974,
                        "end": 6981,
                        "loc": {
                          "start": {
                            "line": 206,
                            "column": 31
                          },
                          "end": {
                            "line": 206,
                            "column": 38
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 6974,
                          "end": 6978,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 31
                            },
                            "end": {
                              "line": 206,
                              "column": 35
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 6979,
                          "end": 6981,
                          "loc": {
                            "start": {
                              "line": 206,
                              "column": 36
                            },
                            "end": {
                              "line": 206,
                              "column": 38
                            },
                            "identifierName": "as"
                          },
                          "name": "as"
                        },
                        "computed": false
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "CommentLine",
                        "value": " Get singular and plural names, trying to uppercase the first letter, unless the model forbids it",
                        "start": 6988,
                        "end": 7087,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 4
                          },
                          "end": {
                            "line": 208,
                            "column": 103
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 7092,
                    "end": 7154,
                    "loc": {
                      "start": {
                        "line": 209,
                        "column": 4
                      },
                      "end": {
                        "line": 209,
                        "column": 66
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 7098,
                        "end": 7153,
                        "loc": {
                          "start": {
                            "line": 209,
                            "column": 10
                          },
                          "end": {
                            "line": 209,
                            "column": 65
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 7098,
                          "end": 7104,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 10
                            },
                            "end": {
                              "line": 209,
                              "column": 16
                            },
                            "identifierName": "plural"
                          },
                          "name": "plural",
                          "leadingComments": null
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 7107,
                          "end": 7153,
                          "loc": {
                            "start": {
                              "line": 209,
                              "column": 19
                            },
                            "end": {
                              "line": 209,
                              "column": 65
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7107,
                            "end": 7127,
                            "loc": {
                              "start": {
                                "line": 209,
                                "column": 19
                              },
                              "end": {
                                "line": 209,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7107,
                              "end": 7112,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 19
                                },
                                "end": {
                                  "line": 209,
                                  "column": 24
                                },
                                "identifierName": "Utils"
                              },
                              "name": "Utils"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7113,
                              "end": 7127,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 25
                                },
                                "end": {
                                  "line": 209,
                                  "column": 39
                                },
                                "identifierName": "uppercaseFirst"
                              },
                              "name": "uppercaseFirst"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 7128,
                              "end": 7152,
                              "loc": {
                                "start": {
                                  "line": 209,
                                  "column": 40
                                },
                                "end": {
                                  "line": 209,
                                  "column": 64
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7128,
                                "end": 7145,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 40
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7128,
                                  "end": 7140,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 52
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7128,
                                    "end": 7132,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 44
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7133,
                                    "end": 7140,
                                    "loc": {
                                      "start": {
                                        "line": 209,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 209,
                                        "column": 52
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7141,
                                  "end": 7145,
                                  "loc": {
                                    "start": {
                                      "line": 209,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 209,
                                      "column": 57
                                    },
                                    "identifierName": "name"
                                  },
                                  "name": "name"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7146,
                                "end": 7152,
                                "loc": {
                                  "start": {
                                    "line": 209,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 209,
                                    "column": 64
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              },
                              "computed": false
                            }
                          ]
                        },
                        "leadingComments": null
                      }
                    ],
                    "kind": "const",
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " Get singular and plural names, trying to uppercase the first letter, unless the model forbids it",
                        "start": 6988,
                        "end": 7087,
                        "loc": {
                          "start": {
                            "line": 208,
                            "column": 4
                          },
                          "end": {
                            "line": 208,
                            "column": 103
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 7159,
                    "end": 7225,
                    "loc": {
                      "start": {
                        "line": 210,
                        "column": 4
                      },
                      "end": {
                        "line": 210,
                        "column": 70
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 7165,
                        "end": 7224,
                        "loc": {
                          "start": {
                            "line": 210,
                            "column": 10
                          },
                          "end": {
                            "line": 210,
                            "column": 69
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 7165,
                          "end": 7173,
                          "loc": {
                            "start": {
                              "line": 210,
                              "column": 10
                            },
                            "end": {
                              "line": 210,
                              "column": 18
                            },
                            "identifierName": "singular"
                          },
                          "name": "singular"
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 7176,
                          "end": 7224,
                          "loc": {
                            "start": {
                              "line": 210,
                              "column": 21
                            },
                            "end": {
                              "line": 210,
                              "column": 69
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 7176,
                            "end": 7196,
                            "loc": {
                              "start": {
                                "line": 210,
                                "column": 21
                              },
                              "end": {
                                "line": 210,
                                "column": 41
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 7176,
                              "end": 7181,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 21
                                },
                                "end": {
                                  "line": 210,
                                  "column": 26
                                },
                                "identifierName": "Utils"
                              },
                              "name": "Utils"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7182,
                              "end": 7196,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 27
                                },
                                "end": {
                                  "line": 210,
                                  "column": 41
                                },
                                "identifierName": "uppercaseFirst"
                              },
                              "name": "uppercaseFirst"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "MemberExpression",
                              "start": 7197,
                              "end": 7223,
                              "loc": {
                                "start": {
                                  "line": 210,
                                  "column": 42
                                },
                                "end": {
                                  "line": 210,
                                  "column": 68
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 7197,
                                "end": 7214,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 42
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 59
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 7197,
                                  "end": 7209,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 54
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 7197,
                                    "end": 7201,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 42
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 46
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 7202,
                                    "end": 7209,
                                    "loc": {
                                      "start": {
                                        "line": 210,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 210,
                                        "column": 54
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 7210,
                                  "end": 7214,
                                  "loc": {
                                    "start": {
                                      "line": 210,
                                      "column": 55
                                    },
                                    "end": {
                                      "line": 210,
                                      "column": 59
                                    },
                                    "identifierName": "name"
                                  },
                                  "name": "name"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7215,
                                "end": 7223,
                                "loc": {
                                  "start": {
                                    "line": 210,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 210,
                                    "column": 68
                                  },
                                  "identifierName": "singular"
                                },
                                "name": "singular"
                              },
                              "computed": false
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 7231,
                    "end": 7580,
                    "loc": {
                      "start": {
                        "line": 212,
                        "column": 4
                      },
                      "end": {
                        "line": 223,
                        "column": 6
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 7231,
                      "end": 7579,
                      "loc": {
                        "start": {
                          "line": 212,
                          "column": 4
                        },
                        "end": {
                          "line": 223,
                          "column": 5
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 7231,
                        "end": 7245,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 4
                          },
                          "end": {
                            "line": 212,
                            "column": 18
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 7231,
                          "end": 7235,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 4
                            },
                            "end": {
                              "line": 212,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7236,
                          "end": 7245,
                          "loc": {
                            "start": {
                              "line": 212,
                              "column": 9
                            },
                            "end": {
                              "line": 212,
                              "column": 18
                            },
                            "identifierName": "accessors"
                          },
                          "name": "accessors"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "ObjectExpression",
                        "start": 7248,
                        "end": 7579,
                        "loc": {
                          "start": {
                            "line": 212,
                            "column": 21
                          },
                          "end": {
                            "line": 223,
                            "column": 5
                          }
                        },
                        "properties": [
                          {
                            "type": "ObjectProperty",
                            "start": 7256,
                            "end": 7275,
                            "loc": {
                              "start": {
                                "line": 213,
                                "column": 6
                              },
                              "end": {
                                "line": 213,
                                "column": 25
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7256,
                              "end": 7259,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 6
                                },
                                "end": {
                                  "line": 213,
                                  "column": 9
                                },
                                "identifierName": "get"
                              },
                              "name": "get"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7261,
                              "end": 7275,
                              "loc": {
                                "start": {
                                  "line": 213,
                                  "column": 11
                                },
                                "end": {
                                  "line": 213,
                                  "column": 25
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7261,
                                "end": 7266,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 16
                                  }
                                },
                                "extra": {
                                  "rawValue": "get",
                                  "raw": "'get'"
                                },
                                "value": "get"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7269,
                                "end": 7275,
                                "loc": {
                                  "start": {
                                    "line": 213,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 213,
                                    "column": 25
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7283,
                            "end": 7302,
                            "loc": {
                              "start": {
                                "line": 214,
                                "column": 6
                              },
                              "end": {
                                "line": 214,
                                "column": 25
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7283,
                              "end": 7286,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 6
                                },
                                "end": {
                                  "line": 214,
                                  "column": 9
                                },
                                "identifierName": "set"
                              },
                              "name": "set"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7288,
                              "end": 7302,
                              "loc": {
                                "start": {
                                  "line": 214,
                                  "column": 11
                                },
                                "end": {
                                  "line": 214,
                                  "column": 25
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7288,
                                "end": 7293,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 16
                                  }
                                },
                                "extra": {
                                  "rawValue": "set",
                                  "raw": "'set'"
                                },
                                "value": "set"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7296,
                                "end": 7302,
                                "loc": {
                                  "start": {
                                    "line": 214,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 214,
                                    "column": 25
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7310,
                            "end": 7337,
                            "loc": {
                              "start": {
                                "line": 215,
                                "column": 6
                              },
                              "end": {
                                "line": 215,
                                "column": 33
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7310,
                              "end": 7321,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 6
                                },
                                "end": {
                                  "line": 215,
                                  "column": 17
                                },
                                "identifierName": "addMultiple"
                              },
                              "name": "addMultiple"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7323,
                              "end": 7337,
                              "loc": {
                                "start": {
                                  "line": 215,
                                  "column": 19
                                },
                                "end": {
                                  "line": 215,
                                  "column": 33
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7323,
                                "end": 7328,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 24
                                  }
                                },
                                "extra": {
                                  "rawValue": "add",
                                  "raw": "'add'"
                                },
                                "value": "add"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7331,
                                "end": 7337,
                                "loc": {
                                  "start": {
                                    "line": 215,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 215,
                                    "column": 33
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7345,
                            "end": 7366,
                            "loc": {
                              "start": {
                                "line": 216,
                                "column": 6
                              },
                              "end": {
                                "line": 216,
                                "column": 27
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7345,
                              "end": 7348,
                              "loc": {
                                "start": {
                                  "line": 216,
                                  "column": 6
                                },
                                "end": {
                                  "line": 216,
                                  "column": 9
                                },
                                "identifierName": "add"
                              },
                              "name": "add"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7350,
                              "end": 7366,
                              "loc": {
                                "start": {
                                  "line": 216,
                                  "column": 11
                                },
                                "end": {
                                  "line": 216,
                                  "column": 27
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7350,
                                "end": 7355,
                                "loc": {
                                  "start": {
                                    "line": 216,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 16
                                  }
                                },
                                "extra": {
                                  "rawValue": "add",
                                  "raw": "'add'"
                                },
                                "value": "add"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7358,
                                "end": 7366,
                                "loc": {
                                  "start": {
                                    "line": 216,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 216,
                                    "column": 27
                                  },
                                  "identifierName": "singular"
                                },
                                "name": "singular"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7374,
                            "end": 7401,
                            "loc": {
                              "start": {
                                "line": 217,
                                "column": 6
                              },
                              "end": {
                                "line": 217,
                                "column": 33
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7374,
                              "end": 7380,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 6
                                },
                                "end": {
                                  "line": 217,
                                  "column": 12
                                },
                                "identifierName": "create"
                              },
                              "name": "create"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7382,
                              "end": 7401,
                              "loc": {
                                "start": {
                                  "line": 217,
                                  "column": 14
                                },
                                "end": {
                                  "line": 217,
                                  "column": 33
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7382,
                                "end": 7390,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 22
                                  }
                                },
                                "extra": {
                                  "rawValue": "create",
                                  "raw": "'create'"
                                },
                                "value": "create"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7393,
                                "end": 7401,
                                "loc": {
                                  "start": {
                                    "line": 217,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 217,
                                    "column": 33
                                  },
                                  "identifierName": "singular"
                                },
                                "name": "singular"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7409,
                            "end": 7436,
                            "loc": {
                              "start": {
                                "line": 218,
                                "column": 6
                              },
                              "end": {
                                "line": 218,
                                "column": 33
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7409,
                              "end": 7415,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 6
                                },
                                "end": {
                                  "line": 218,
                                  "column": 12
                                },
                                "identifierName": "remove"
                              },
                              "name": "remove"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7417,
                              "end": 7436,
                              "loc": {
                                "start": {
                                  "line": 218,
                                  "column": 14
                                },
                                "end": {
                                  "line": 218,
                                  "column": 33
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7417,
                                "end": 7425,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 22
                                  }
                                },
                                "extra": {
                                  "rawValue": "remove",
                                  "raw": "'remove'"
                                },
                                "value": "remove"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7428,
                                "end": 7436,
                                "loc": {
                                  "start": {
                                    "line": 218,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 218,
                                    "column": 33
                                  },
                                  "identifierName": "singular"
                                },
                                "name": "singular"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7444,
                            "end": 7477,
                            "loc": {
                              "start": {
                                "line": 219,
                                "column": 6
                              },
                              "end": {
                                "line": 219,
                                "column": 39
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7444,
                              "end": 7458,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 6
                                },
                                "end": {
                                  "line": 219,
                                  "column": 20
                                },
                                "identifierName": "removeMultiple"
                              },
                              "name": "removeMultiple"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7460,
                              "end": 7477,
                              "loc": {
                                "start": {
                                  "line": 219,
                                  "column": 22
                                },
                                "end": {
                                  "line": 219,
                                  "column": 39
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7460,
                                "end": 7468,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 30
                                  }
                                },
                                "extra": {
                                  "rawValue": "remove",
                                  "raw": "'remove'"
                                },
                                "value": "remove"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7471,
                                "end": 7477,
                                "loc": {
                                  "start": {
                                    "line": 219,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 219,
                                    "column": 39
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7485,
                            "end": 7512,
                            "loc": {
                              "start": {
                                "line": 220,
                                "column": 6
                              },
                              "end": {
                                "line": 220,
                                "column": 33
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7485,
                              "end": 7494,
                              "loc": {
                                "start": {
                                  "line": 220,
                                  "column": 6
                                },
                                "end": {
                                  "line": 220,
                                  "column": 15
                                },
                                "identifierName": "hasSingle"
                              },
                              "name": "hasSingle"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7496,
                              "end": 7512,
                              "loc": {
                                "start": {
                                  "line": 220,
                                  "column": 17
                                },
                                "end": {
                                  "line": 220,
                                  "column": 33
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7496,
                                "end": 7501,
                                "loc": {
                                  "start": {
                                    "line": 220,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 220,
                                    "column": 22
                                  }
                                },
                                "extra": {
                                  "rawValue": "has",
                                  "raw": "'has'"
                                },
                                "value": "has"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7504,
                                "end": 7512,
                                "loc": {
                                  "start": {
                                    "line": 220,
                                    "column": 25
                                  },
                                  "end": {
                                    "line": 220,
                                    "column": 33
                                  },
                                  "identifierName": "singular"
                                },
                                "name": "singular"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7520,
                            "end": 7542,
                            "loc": {
                              "start": {
                                "line": 221,
                                "column": 6
                              },
                              "end": {
                                "line": 221,
                                "column": 28
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7520,
                              "end": 7526,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 6
                                },
                                "end": {
                                  "line": 221,
                                  "column": 12
                                },
                                "identifierName": "hasAll"
                              },
                              "name": "hasAll"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7528,
                              "end": 7542,
                              "loc": {
                                "start": {
                                  "line": 221,
                                  "column": 14
                                },
                                "end": {
                                  "line": 221,
                                  "column": 28
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7528,
                                "end": 7533,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 19
                                  }
                                },
                                "extra": {
                                  "rawValue": "has",
                                  "raw": "'has'"
                                },
                                "value": "has"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7536,
                                "end": 7542,
                                "loc": {
                                  "start": {
                                    "line": 221,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 221,
                                    "column": 28
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          },
                          {
                            "type": "ObjectProperty",
                            "start": 7550,
                            "end": 7573,
                            "loc": {
                              "start": {
                                "line": 222,
                                "column": 6
                              },
                              "end": {
                                "line": 222,
                                "column": 29
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 7550,
                              "end": 7555,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 6
                                },
                                "end": {
                                  "line": 222,
                                  "column": 11
                                },
                                "identifierName": "count"
                              },
                              "name": "count"
                            },
                            "value": {
                              "type": "BinaryExpression",
                              "start": 7557,
                              "end": 7573,
                              "loc": {
                                "start": {
                                  "line": 222,
                                  "column": 13
                                },
                                "end": {
                                  "line": 222,
                                  "column": 29
                                }
                              },
                              "left": {
                                "type": "StringLiteral",
                                "start": 7557,
                                "end": 7564,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 13
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 20
                                  }
                                },
                                "extra": {
                                  "rawValue": "count",
                                  "raw": "'count'"
                                },
                                "value": "count"
                              },
                              "operator": "+",
                              "right": {
                                "type": "Identifier",
                                "start": 7567,
                                "end": 7573,
                                "loc": {
                                  "start": {
                                    "line": 222,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 222,
                                    "column": 29
                                  },
                                  "identifierName": "plural"
                                },
                                "name": "plural"
                              }
                            }
                          }
                        ]
                      }
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentLine",
                  "value": " the id is in the target table",
                  "start": 7588,
                  "end": 7620,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 2
                    },
                    "end": {
                      "line": 226,
                      "column": 34
                    }
                  }
                },
                {
                  "type": "CommentLine",
                  "value": " or in an extra table which connects two tables",
                  "start": 7623,
                  "end": 7672,
                  "loc": {
                    "start": {
                      "line": 227,
                      "column": 2
                    },
                    "end": {
                      "line": 227,
                      "column": 51
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 7675,
              "end": 12915,
              "loc": {
                "start": {
                  "line": 228,
                  "column": 2
                },
                "end": {
                  "line": 349,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 7675,
                "end": 7691,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 2
                  },
                  "end": {
                    "line": 228,
                    "column": 18
                  },
                  "identifierName": "injectAttributes"
                },
                "name": "injectAttributes",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [],
              "body": {
                "type": "BlockStatement",
                "start": 7694,
                "end": 12915,
                "loc": {
                  "start": {
                    "line": 228,
                    "column": 21
                  },
                  "end": {
                    "line": 349,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 7701,
                    "end": 7735,
                    "loc": {
                      "start": {
                        "line": 230,
                        "column": 4
                      },
                      "end": {
                        "line": 230,
                        "column": 38
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 7701,
                      "end": 7734,
                      "loc": {
                        "start": {
                          "line": 230,
                          "column": 4
                        },
                        "end": {
                          "line": 230,
                          "column": 37
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 7701,
                        "end": 7716,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 4
                          },
                          "end": {
                            "line": 230,
                            "column": 19
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 7701,
                          "end": 7705,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 4
                            },
                            "end": {
                              "line": 230,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7706,
                          "end": 7716,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 9
                            },
                            "end": {
                              "line": 230,
                              "column": 19
                            },
                            "identifierName": "identifier"
                          },
                          "name": "identifier"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 7719,
                        "end": 7734,
                        "loc": {
                          "start": {
                            "line": 230,
                            "column": 22
                          },
                          "end": {
                            "line": 230,
                            "column": 37
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 7719,
                          "end": 7723,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 22
                            },
                            "end": {
                              "line": 230,
                              "column": 26
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7724,
                          "end": 7734,
                          "loc": {
                            "start": {
                              "line": 230,
                              "column": 27
                            },
                            "end": {
                              "line": 230,
                              "column": 37
                            },
                            "identifierName": "foreignKey"
                          },
                          "name": "foreignKey"
                        },
                        "computed": false
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 7740,
                    "end": 7779,
                    "loc": {
                      "start": {
                        "line": 231,
                        "column": 4
                      },
                      "end": {
                        "line": 231,
                        "column": 43
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 7740,
                      "end": 7778,
                      "loc": {
                        "start": {
                          "line": 231,
                          "column": 4
                        },
                        "end": {
                          "line": 231,
                          "column": 42
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 7740,
                        "end": 7762,
                        "loc": {
                          "start": {
                            "line": 231,
                            "column": 4
                          },
                          "end": {
                            "line": 231,
                            "column": 26
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 7740,
                          "end": 7744,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 4
                            },
                            "end": {
                              "line": 231,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7745,
                          "end": 7762,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 9
                            },
                            "end": {
                              "line": 231,
                              "column": 26
                            },
                            "identifierName": "foreignIdentifier"
                          },
                          "name": "foreignIdentifier"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "MemberExpression",
                        "start": 7765,
                        "end": 7778,
                        "loc": {
                          "start": {
                            "line": 231,
                            "column": 29
                          },
                          "end": {
                            "line": 231,
                            "column": 42
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 7765,
                          "end": 7769,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 29
                            },
                            "end": {
                              "line": 231,
                              "column": 33
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7770,
                          "end": 7778,
                          "loc": {
                            "start": {
                              "line": 231,
                              "column": 34
                            },
                            "end": {
                              "line": 231,
                              "column": 42
                            },
                            "identifierName": "otherKey"
                          },
                          "name": "otherKey"
                        },
                        "computed": false
                      }
                    },
                    "trailingComments": [
                      {
                        "type": "CommentLine",
                        "value": " remove any PKs previously defined by sequelize",
                        "start": 7785,
                        "end": 7834,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 4
                          },
                          "end": {
                            "line": 233,
                            "column": 53
                          }
                        }
                      },
                      {
                        "type": "CommentLine",
                        "value": " but ignore any keys that are part of this association (#5865)",
                        "start": 7839,
                        "end": 7903,
                        "loc": {
                          "start": {
                            "line": 234,
                            "column": 4
                          },
                          "end": {
                            "line": 234,
                            "column": 68
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 7908,
                    "end": 8455,
                    "loc": {
                      "start": {
                        "line": 235,
                        "column": 4
                      },
                      "end": {
                        "line": 247,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 7908,
                      "end": 8454,
                      "loc": {
                        "start": {
                          "line": 235,
                          "column": 4
                        },
                        "end": {
                          "line": 247,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 7908,
                        "end": 7914,
                        "loc": {
                          "start": {
                            "line": 235,
                            "column": 4
                          },
                          "end": {
                            "line": 235,
                            "column": 10
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 7908,
                          "end": 7909,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 4
                            },
                            "end": {
                              "line": 235,
                              "column": 5
                            },
                            "identifierName": "_"
                          },
                          "name": "_",
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 7910,
                          "end": 7914,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 6
                            },
                            "end": {
                              "line": 235,
                              "column": 10
                            },
                            "identifierName": "each"
                          },
                          "name": "each"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "arguments": [
                        {
                          "type": "MemberExpression",
                          "start": 7915,
                          "end": 7947,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 11
                            },
                            "end": {
                              "line": 235,
                              "column": 43
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 7915,
                            "end": 7933,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 11
                              },
                              "end": {
                                "line": 235,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 7915,
                              "end": 7927,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 11
                                },
                                "end": {
                                  "line": 235,
                                  "column": 23
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 7915,
                                "end": 7919,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 15
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 7920,
                                "end": 7927,
                                "loc": {
                                  "start": {
                                    "line": 235,
                                    "column": 16
                                  },
                                  "end": {
                                    "line": 235,
                                    "column": 23
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 7928,
                              "end": 7933,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 24
                                },
                                "end": {
                                  "line": 235,
                                  "column": 29
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 7934,
                            "end": 7947,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 30
                              },
                              "end": {
                                "line": 235,
                                "column": 43
                              },
                              "identifierName": "rawAttributes"
                            },
                            "name": "rawAttributes"
                          },
                          "computed": false
                        },
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 7949,
                          "end": 8453,
                          "loc": {
                            "start": {
                              "line": 235,
                              "column": 45
                            },
                            "end": {
                              "line": 247,
                              "column": 5
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": false,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 7950,
                              "end": 7959,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 46
                                },
                                "end": {
                                  "line": 235,
                                  "column": 55
                                },
                                "identifierName": "attribute"
                              },
                              "name": "attribute"
                            },
                            {
                              "type": "Identifier",
                              "start": 7961,
                              "end": 7974,
                              "loc": {
                                "start": {
                                  "line": 235,
                                  "column": 57
                                },
                                "end": {
                                  "line": 235,
                                  "column": 70
                                },
                                "identifierName": "attributeName"
                              },
                              "name": "attributeName"
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "start": 7979,
                            "end": 8453,
                            "loc": {
                              "start": {
                                "line": 235,
                                "column": 75
                              },
                              "end": {
                                "line": 247,
                                "column": 5
                              }
                            },
                            "body": [
                              {
                                "type": "IfStatement",
                                "start": 7987,
                                "end": 8447,
                                "loc": {
                                  "start": {
                                    "line": 236,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 246,
                                    "column": 7
                                  }
                                },
                                "test": {
                                  "type": "LogicalExpression",
                                  "start": 7991,
                                  "end": 8057,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 236,
                                      "column": 76
                                    }
                                  },
                                  "left": {
                                    "type": "BinaryExpression",
                                    "start": 7991,
                                    "end": 8020,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 39
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 7991,
                                      "end": 8011,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 7991,
                                        "end": 8000,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 19
                                          },
                                          "identifierName": "attribute"
                                        },
                                        "name": "attribute"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8001,
                                        "end": 8011,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 30
                                          },
                                          "identifierName": "primaryKey"
                                        },
                                        "name": "primaryKey"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 8016,
                                      "end": 8020,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 39
                                        }
                                      },
                                      "value": true
                                    }
                                  },
                                  "operator": "&&",
                                  "right": {
                                    "type": "BinaryExpression",
                                    "start": 8024,
                                    "end": 8057,
                                    "loc": {
                                      "start": {
                                        "line": 236,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 236,
                                        "column": 76
                                      }
                                    },
                                    "left": {
                                      "type": "MemberExpression",
                                      "start": 8024,
                                      "end": 8048,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 67
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 8024,
                                        "end": 8033,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 52
                                          },
                                          "identifierName": "attribute"
                                        },
                                        "name": "attribute"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 8034,
                                        "end": 8048,
                                        "loc": {
                                          "start": {
                                            "line": 236,
                                            "column": 53
                                          },
                                          "end": {
                                            "line": 236,
                                            "column": 67
                                          },
                                          "identifierName": "_autoGenerated"
                                        },
                                        "name": "_autoGenerated"
                                      },
                                      "computed": false
                                    },
                                    "operator": "===",
                                    "right": {
                                      "type": "BooleanLiteral",
                                      "start": 8053,
                                      "end": 8057,
                                      "loc": {
                                        "start": {
                                          "line": 236,
                                          "column": 72
                                        },
                                        "end": {
                                          "line": 236,
                                          "column": 76
                                        }
                                      },
                                      "value": true
                                    }
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 8059,
                                  "end": 8447,
                                  "loc": {
                                    "start": {
                                      "line": 236,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 246,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "IfStatement",
                                      "start": 8069,
                                      "end": 8400,
                                      "loc": {
                                        "start": {
                                          "line": 237,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 244,
                                          "column": 9
                                        }
                                      },
                                      "test": {
                                        "type": "LogicalExpression",
                                        "start": 8073,
                                        "end": 8141,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 237,
                                            "column": 80
                                          }
                                        },
                                        "left": {
                                          "type": "BinaryExpression",
                                          "start": 8073,
                                          "end": 8106,
                                          "loc": {
                                            "start": {
                                              "line": 237,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 237,
                                              "column": 45
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8073,
                                            "end": 8086,
                                            "loc": {
                                              "start": {
                                                "line": 237,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 237,
                                                "column": 25
                                              },
                                              "identifierName": "attributeName"
                                            },
                                            "name": "attributeName"
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 8091,
                                            "end": 8106,
                                            "loc": {
                                              "start": {
                                                "line": 237,
                                                "column": 30
                                              },
                                              "end": {
                                                "line": 237,
                                                "column": 45
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 8091,
                                              "end": 8095,
                                              "loc": {
                                                "start": {
                                                  "line": 237,
                                                  "column": 30
                                                },
                                                "end": {
                                                  "line": 237,
                                                  "column": 34
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8096,
                                              "end": 8106,
                                              "loc": {
                                                "start": {
                                                  "line": 237,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 237,
                                                  "column": 45
                                                },
                                                "identifierName": "foreignKey"
                                              },
                                              "name": "foreignKey"
                                            },
                                            "computed": false
                                          }
                                        },
                                        "operator": "||",
                                        "right": {
                                          "type": "BinaryExpression",
                                          "start": 8110,
                                          "end": 8141,
                                          "loc": {
                                            "start": {
                                              "line": 237,
                                              "column": 49
                                            },
                                            "end": {
                                              "line": 237,
                                              "column": 80
                                            }
                                          },
                                          "left": {
                                            "type": "Identifier",
                                            "start": 8110,
                                            "end": 8123,
                                            "loc": {
                                              "start": {
                                                "line": 237,
                                                "column": 49
                                              },
                                              "end": {
                                                "line": 237,
                                                "column": 62
                                              },
                                              "identifierName": "attributeName"
                                            },
                                            "name": "attributeName"
                                          },
                                          "operator": "===",
                                          "right": {
                                            "type": "MemberExpression",
                                            "start": 8128,
                                            "end": 8141,
                                            "loc": {
                                              "start": {
                                                "line": 237,
                                                "column": 67
                                              },
                                              "end": {
                                                "line": 237,
                                                "column": 80
                                              }
                                            },
                                            "object": {
                                              "type": "ThisExpression",
                                              "start": 8128,
                                              "end": 8132,
                                              "loc": {
                                                "start": {
                                                  "line": 237,
                                                  "column": 67
                                                },
                                                "end": {
                                                  "line": 237,
                                                  "column": 71
                                                }
                                              }
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 8133,
                                              "end": 8141,
                                              "loc": {
                                                "start": {
                                                  "line": 237,
                                                  "column": 72
                                                },
                                                "end": {
                                                  "line": 237,
                                                  "column": 80
                                                },
                                                "identifierName": "otherKey"
                                              },
                                              "name": "otherKey"
                                            },
                                            "computed": false
                                          }
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 8143,
                                        "end": 8309,
                                        "loc": {
                                          "start": {
                                            "line": 237,
                                            "column": 82
                                          },
                                          "end": {
                                            "line": 241,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 8270,
                                            "end": 8299,
                                            "loc": {
                                              "start": {
                                                "line": 240,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 240,
                                                "column": 39
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 8270,
                                              "end": 8298,
                                              "loc": {
                                                "start": {
                                                  "line": 240,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 240,
                                                  "column": 38
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 8270,
                                                "end": 8290,
                                                "loc": {
                                                  "start": {
                                                    "line": 240,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 240,
                                                    "column": 30
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 8270,
                                                  "end": 8279,
                                                  "loc": {
                                                    "start": {
                                                      "line": 240,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 240,
                                                      "column": 19
                                                    },
                                                    "identifierName": "attribute"
                                                  },
                                                  "name": "attribute",
                                                  "leadingComments": null
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8280,
                                                  "end": 8290,
                                                  "loc": {
                                                    "start": {
                                                      "line": 240,
                                                      "column": 20
                                                    },
                                                    "end": {
                                                      "line": 240,
                                                      "column": 30
                                                    },
                                                    "identifierName": "primaryKey"
                                                  },
                                                  "name": "primaryKey"
                                                },
                                                "computed": false,
                                                "leadingComments": null
                                              },
                                              "right": {
                                                "type": "BooleanLiteral",
                                                "start": 8293,
                                                "end": 8298,
                                                "loc": {
                                                  "start": {
                                                    "line": 240,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 240,
                                                    "column": 38
                                                  }
                                                },
                                                "value": false
                                              },
                                              "leadingComments": null
                                            },
                                            "leadingComments": [
                                              {
                                                "type": "CommentLine",
                                                "value": " this key is still needed as it's part of the association",
                                                "start": 8155,
                                                "end": 8214,
                                                "loc": {
                                                  "start": {
                                                    "line": 238,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 238,
                                                    "column": 69
                                                  }
                                                }
                                              },
                                              {
                                                "type": "CommentLine",
                                                "value": " so just set primaryKey to false",
                                                "start": 8225,
                                                "end": 8259,
                                                "loc": {
                                                  "start": {
                                                    "line": 239,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 239,
                                                    "column": 44
                                                  }
                                                }
                                              }
                                            ]
                                          }
                                        ],
                                        "directives": []
                                      },
                                      "alternate": {
                                        "type": "BlockStatement",
                                        "start": 8323,
                                        "end": 8400,
                                        "loc": {
                                          "start": {
                                            "line": 242,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 244,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 8335,
                                            "end": 8390,
                                            "loc": {
                                              "start": {
                                                "line": 243,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 243,
                                                "column": 65
                                              }
                                            },
                                            "expression": {
                                              "type": "UnaryExpression",
                                              "start": 8335,
                                              "end": 8389,
                                              "loc": {
                                                "start": {
                                                  "line": 243,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 243,
                                                  "column": 64
                                                }
                                              },
                                              "operator": "delete",
                                              "prefix": true,
                                              "argument": {
                                                "type": "MemberExpression",
                                                "start": 8342,
                                                "end": 8389,
                                                "loc": {
                                                  "start": {
                                                    "line": 243,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 243,
                                                    "column": 64
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 8342,
                                                  "end": 8374,
                                                  "loc": {
                                                    "start": {
                                                      "line": 243,
                                                      "column": 17
                                                    },
                                                    "end": {
                                                      "line": 243,
                                                      "column": 49
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "MemberExpression",
                                                    "start": 8342,
                                                    "end": 8360,
                                                    "loc": {
                                                      "start": {
                                                        "line": 243,
                                                        "column": 17
                                                      },
                                                      "end": {
                                                        "line": 243,
                                                        "column": 35
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 8342,
                                                      "end": 8354,
                                                      "loc": {
                                                        "start": {
                                                          "line": 243,
                                                          "column": 17
                                                        },
                                                        "end": {
                                                          "line": 243,
                                                          "column": 29
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "ThisExpression",
                                                        "start": 8342,
                                                        "end": 8346,
                                                        "loc": {
                                                          "start": {
                                                            "line": 243,
                                                            "column": 17
                                                          },
                                                          "end": {
                                                            "line": 243,
                                                            "column": 21
                                                          }
                                                        }
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 8347,
                                                        "end": 8354,
                                                        "loc": {
                                                          "start": {
                                                            "line": 243,
                                                            "column": 22
                                                          },
                                                          "end": {
                                                            "line": 243,
                                                            "column": 29
                                                          },
                                                          "identifierName": "through"
                                                        },
                                                        "name": "through"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 8355,
                                                      "end": 8360,
                                                      "loc": {
                                                        "start": {
                                                          "line": 243,
                                                          "column": 30
                                                        },
                                                        "end": {
                                                          "line": 243,
                                                          "column": 35
                                                        },
                                                        "identifierName": "model"
                                                      },
                                                      "name": "model"
                                                    },
                                                    "computed": false
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 8361,
                                                    "end": 8374,
                                                    "loc": {
                                                      "start": {
                                                        "line": 243,
                                                        "column": 36
                                                      },
                                                      "end": {
                                                        "line": 243,
                                                        "column": 49
                                                      },
                                                      "identifierName": "rawAttributes"
                                                    },
                                                    "name": "rawAttributes"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 8375,
                                                  "end": 8388,
                                                  "loc": {
                                                    "start": {
                                                      "line": 243,
                                                      "column": 50
                                                    },
                                                    "end": {
                                                      "line": 243,
                                                      "column": 63
                                                    },
                                                    "identifierName": "attributeName"
                                                  },
                                                  "name": "attributeName"
                                                },
                                                "computed": true
                                              },
                                              "extra": {
                                                "parenthesizedArgument": false
                                              }
                                            }
                                          }
                                        ],
                                        "directives": []
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 8409,
                                      "end": 8439,
                                      "loc": {
                                        "start": {
                                          "line": 245,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 245,
                                          "column": 38
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 8409,
                                        "end": 8438,
                                        "loc": {
                                          "start": {
                                            "line": 245,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 245,
                                            "column": 37
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 8409,
                                          "end": 8431,
                                          "loc": {
                                            "start": {
                                              "line": 245,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 245,
                                              "column": 30
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 8409,
                                            "end": 8413,
                                            "loc": {
                                              "start": {
                                                "line": 245,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 245,
                                                "column": 12
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 8414,
                                            "end": 8431,
                                            "loc": {
                                              "start": {
                                                "line": 245,
                                                "column": 13
                                              },
                                              "end": {
                                                "line": 245,
                                                "column": 30
                                              },
                                              "identifierName": "primaryKeyDeleted"
                                            },
                                            "name": "primaryKeyDeleted"
                                          },
                                          "computed": false
                                        },
                                        "right": {
                                          "type": "BooleanLiteral",
                                          "start": 8434,
                                          "end": 8438,
                                          "loc": {
                                            "start": {
                                              "line": 245,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 245,
                                              "column": 37
                                            }
                                          },
                                          "value": true
                                        }
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " remove any PKs previously defined by sequelize",
                        "start": 7785,
                        "end": 7834,
                        "loc": {
                          "start": {
                            "line": 233,
                            "column": 4
                          },
                          "end": {
                            "line": 233,
                            "column": 53
                          }
                        }
                      },
                      {
                        "type": "CommentLine",
                        "value": " but ignore any keys that are part of this association (#5865)",
                        "start": 7839,
                        "end": 7903,
                        "loc": {
                          "start": {
                            "line": 234,
                            "column": 4
                          },
                          "end": {
                            "line": 234,
                            "column": 68
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8461,
                    "end": 8538,
                    "loc": {
                      "start": {
                        "line": 249,
                        "column": 4
                      },
                      "end": {
                        "line": 249,
                        "column": 81
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8467,
                        "end": 8537,
                        "loc": {
                          "start": {
                            "line": 249,
                            "column": 10
                          },
                          "end": {
                            "line": 249,
                            "column": 80
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8467,
                          "end": 8476,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 10
                            },
                            "end": {
                              "line": 249,
                              "column": 19
                            },
                            "identifierName": "sourceKey"
                          },
                          "name": "sourceKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 8479,
                          "end": 8537,
                          "loc": {
                            "start": {
                              "line": 249,
                              "column": 22
                            },
                            "end": {
                              "line": 249,
                              "column": 80
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8479,
                            "end": 8504,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 22
                              },
                              "end": {
                                "line": 249,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8479,
                              "end": 8490,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 22
                                },
                                "end": {
                                  "line": 249,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8479,
                                "end": 8483,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 26
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8484,
                                "end": 8490,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 33
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8491,
                              "end": 8504,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 34
                                },
                                "end": {
                                  "line": 249,
                                  "column": 47
                                },
                                "identifierName": "rawAttributes"
                              },
                              "name": "rawAttributes"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 8505,
                            "end": 8536,
                            "loc": {
                              "start": {
                                "line": 249,
                                "column": 48
                              },
                              "end": {
                                "line": 249,
                                "column": 79
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8505,
                              "end": 8516,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 48
                                },
                                "end": {
                                  "line": 249,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8505,
                                "end": 8509,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 52
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8510,
                                "end": 8516,
                                "loc": {
                                  "start": {
                                    "line": 249,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 249,
                                    "column": 59
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8517,
                              "end": 8536,
                              "loc": {
                                "start": {
                                  "line": 249,
                                  "column": 60
                                },
                                "end": {
                                  "line": 249,
                                  "column": 79
                                },
                                "identifierName": "primaryKeyAttribute"
                              },
                              "name": "primaryKeyAttribute"
                            },
                            "computed": false
                          },
                          "computed": true
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8543,
                    "end": 8580,
                    "loc": {
                      "start": {
                        "line": 250,
                        "column": 4
                      },
                      "end": {
                        "line": 250,
                        "column": 41
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8549,
                        "end": 8579,
                        "loc": {
                          "start": {
                            "line": 250,
                            "column": 10
                          },
                          "end": {
                            "line": 250,
                            "column": 40
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8549,
                          "end": 8562,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 10
                            },
                            "end": {
                              "line": 250,
                              "column": 23
                            },
                            "identifierName": "sourceKeyType"
                          },
                          "name": "sourceKeyType"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 8565,
                          "end": 8579,
                          "loc": {
                            "start": {
                              "line": 250,
                              "column": 26
                            },
                            "end": {
                              "line": 250,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8565,
                            "end": 8574,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 26
                              },
                              "end": {
                                "line": 250,
                                "column": 35
                              },
                              "identifierName": "sourceKey"
                            },
                            "name": "sourceKey"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8575,
                            "end": 8579,
                            "loc": {
                              "start": {
                                "line": 250,
                                "column": 36
                              },
                              "end": {
                                "line": 250,
                                "column": 40
                              },
                              "identifierName": "type"
                            },
                            "name": "type"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8585,
                    "end": 8659,
                    "loc": {
                      "start": {
                        "line": 251,
                        "column": 4
                      },
                      "end": {
                        "line": 251,
                        "column": 78
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8591,
                        "end": 8658,
                        "loc": {
                          "start": {
                            "line": 251,
                            "column": 10
                          },
                          "end": {
                            "line": 251,
                            "column": 77
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8591,
                          "end": 8605,
                          "loc": {
                            "start": {
                              "line": 251,
                              "column": 10
                            },
                            "end": {
                              "line": 251,
                              "column": 24
                            },
                            "identifierName": "sourceKeyField"
                          },
                          "name": "sourceKeyField"
                        },
                        "init": {
                          "type": "LogicalExpression",
                          "start": 8608,
                          "end": 8658,
                          "loc": {
                            "start": {
                              "line": 251,
                              "column": 27
                            },
                            "end": {
                              "line": 251,
                              "column": 77
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 8608,
                            "end": 8623,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 27
                              },
                              "end": {
                                "line": 251,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8608,
                              "end": 8617,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 27
                                },
                                "end": {
                                  "line": 251,
                                  "column": 36
                                },
                                "identifierName": "sourceKey"
                              },
                              "name": "sourceKey"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8618,
                              "end": 8623,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 37
                                },
                                "end": {
                                  "line": 251,
                                  "column": 42
                                },
                                "identifierName": "field"
                              },
                              "name": "field"
                            },
                            "computed": false
                          },
                          "operator": "||",
                          "right": {
                            "type": "MemberExpression",
                            "start": 8627,
                            "end": 8658,
                            "loc": {
                              "start": {
                                "line": 251,
                                "column": 46
                              },
                              "end": {
                                "line": 251,
                                "column": 77
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8627,
                              "end": 8638,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 46
                                },
                                "end": {
                                  "line": 251,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8627,
                                "end": 8631,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 50
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8632,
                                "end": 8638,
                                "loc": {
                                  "start": {
                                    "line": 251,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 251,
                                    "column": 57
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8639,
                              "end": 8658,
                              "loc": {
                                "start": {
                                  "line": 251,
                                  "column": 58
                                },
                                "end": {
                                  "line": 251,
                                  "column": 77
                                },
                                "identifierName": "primaryKeyAttribute"
                              },
                              "name": "primaryKeyAttribute"
                            },
                            "computed": false
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8664,
                    "end": 8741,
                    "loc": {
                      "start": {
                        "line": 252,
                        "column": 4
                      },
                      "end": {
                        "line": 252,
                        "column": 81
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8670,
                        "end": 8740,
                        "loc": {
                          "start": {
                            "line": 252,
                            "column": 10
                          },
                          "end": {
                            "line": 252,
                            "column": 80
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8670,
                          "end": 8679,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 10
                            },
                            "end": {
                              "line": 252,
                              "column": 19
                            },
                            "identifierName": "targetKey"
                          },
                          "name": "targetKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 8682,
                          "end": 8740,
                          "loc": {
                            "start": {
                              "line": 252,
                              "column": 22
                            },
                            "end": {
                              "line": 252,
                              "column": 80
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 8682,
                            "end": 8707,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 22
                              },
                              "end": {
                                "line": 252,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8682,
                              "end": 8693,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 22
                                },
                                "end": {
                                  "line": 252,
                                  "column": 33
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8682,
                                "end": 8686,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 26
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8687,
                                "end": 8693,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 33
                                  },
                                  "identifierName": "target"
                                },
                                "name": "target"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8694,
                              "end": 8707,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 34
                                },
                                "end": {
                                  "line": 252,
                                  "column": 47
                                },
                                "identifierName": "rawAttributes"
                              },
                              "name": "rawAttributes"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "MemberExpression",
                            "start": 8708,
                            "end": 8739,
                            "loc": {
                              "start": {
                                "line": 252,
                                "column": 48
                              },
                              "end": {
                                "line": 252,
                                "column": 79
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8708,
                              "end": 8719,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 48
                                },
                                "end": {
                                  "line": 252,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8708,
                                "end": 8712,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 52
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8713,
                                "end": 8719,
                                "loc": {
                                  "start": {
                                    "line": 252,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 252,
                                    "column": 59
                                  },
                                  "identifierName": "target"
                                },
                                "name": "target"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8720,
                              "end": 8739,
                              "loc": {
                                "start": {
                                  "line": 252,
                                  "column": 60
                                },
                                "end": {
                                  "line": 252,
                                  "column": 79
                                },
                                "identifierName": "primaryKeyAttribute"
                              },
                              "name": "primaryKeyAttribute"
                            },
                            "computed": false
                          },
                          "computed": true
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8746,
                    "end": 8783,
                    "loc": {
                      "start": {
                        "line": 253,
                        "column": 4
                      },
                      "end": {
                        "line": 253,
                        "column": 41
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8752,
                        "end": 8782,
                        "loc": {
                          "start": {
                            "line": 253,
                            "column": 10
                          },
                          "end": {
                            "line": 253,
                            "column": 40
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8752,
                          "end": 8765,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 10
                            },
                            "end": {
                              "line": 253,
                              "column": 23
                            },
                            "identifierName": "targetKeyType"
                          },
                          "name": "targetKeyType"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 8768,
                          "end": 8782,
                          "loc": {
                            "start": {
                              "line": 253,
                              "column": 26
                            },
                            "end": {
                              "line": 253,
                              "column": 40
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 8768,
                            "end": 8777,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 26
                              },
                              "end": {
                                "line": 253,
                                "column": 35
                              },
                              "identifierName": "targetKey"
                            },
                            "name": "targetKey"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 8778,
                            "end": 8782,
                            "loc": {
                              "start": {
                                "line": 253,
                                "column": 36
                              },
                              "end": {
                                "line": 253,
                                "column": 40
                              },
                              "identifierName": "type"
                            },
                            "name": "type"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8788,
                    "end": 8862,
                    "loc": {
                      "start": {
                        "line": 254,
                        "column": 4
                      },
                      "end": {
                        "line": 254,
                        "column": 78
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8794,
                        "end": 8861,
                        "loc": {
                          "start": {
                            "line": 254,
                            "column": 10
                          },
                          "end": {
                            "line": 254,
                            "column": 77
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8794,
                          "end": 8808,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 10
                            },
                            "end": {
                              "line": 254,
                              "column": 24
                            },
                            "identifierName": "targetKeyField"
                          },
                          "name": "targetKeyField"
                        },
                        "init": {
                          "type": "LogicalExpression",
                          "start": 8811,
                          "end": 8861,
                          "loc": {
                            "start": {
                              "line": 254,
                              "column": 27
                            },
                            "end": {
                              "line": 254,
                              "column": 77
                            }
                          },
                          "left": {
                            "type": "MemberExpression",
                            "start": 8811,
                            "end": 8826,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 27
                              },
                              "end": {
                                "line": 254,
                                "column": 42
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8811,
                              "end": 8820,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 27
                                },
                                "end": {
                                  "line": 254,
                                  "column": 36
                                },
                                "identifierName": "targetKey"
                              },
                              "name": "targetKey"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8821,
                              "end": 8826,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 37
                                },
                                "end": {
                                  "line": 254,
                                  "column": 42
                                },
                                "identifierName": "field"
                              },
                              "name": "field"
                            },
                            "computed": false
                          },
                          "operator": "||",
                          "right": {
                            "type": "MemberExpression",
                            "start": 8830,
                            "end": 8861,
                            "loc": {
                              "start": {
                                "line": 254,
                                "column": 46
                              },
                              "end": {
                                "line": 254,
                                "column": 77
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 8830,
                              "end": 8841,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 46
                                },
                                "end": {
                                  "line": 254,
                                  "column": 57
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8830,
                                "end": 8834,
                                "loc": {
                                  "start": {
                                    "line": 254,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 254,
                                    "column": 50
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8835,
                                "end": 8841,
                                "loc": {
                                  "start": {
                                    "line": 254,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 254,
                                    "column": 57
                                  },
                                  "identifierName": "target"
                                },
                                "name": "target"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8842,
                              "end": 8861,
                              "loc": {
                                "start": {
                                  "line": 254,
                                  "column": 58
                                },
                                "end": {
                                  "line": 254,
                                  "column": 77
                                },
                                "identifierName": "primaryKeyAttribute"
                              },
                              "name": "primaryKeyAttribute"
                            },
                            "computed": false
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8867,
                    "end": 8957,
                    "loc": {
                      "start": {
                        "line": 255,
                        "column": 4
                      },
                      "end": {
                        "line": 255,
                        "column": 94
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8873,
                        "end": 8956,
                        "loc": {
                          "start": {
                            "line": 255,
                            "column": 10
                          },
                          "end": {
                            "line": 255,
                            "column": 93
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8873,
                          "end": 8888,
                          "loc": {
                            "start": {
                              "line": 255,
                              "column": 10
                            },
                            "end": {
                              "line": 255,
                              "column": 25
                            },
                            "identifierName": "sourceAttribute"
                          },
                          "name": "sourceAttribute"
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 8891,
                          "end": 8956,
                          "loc": {
                            "start": {
                              "line": 255,
                              "column": 28
                            },
                            "end": {
                              "line": 255,
                              "column": 93
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8891,
                            "end": 8901,
                            "loc": {
                              "start": {
                                "line": 255,
                                "column": 28
                              },
                              "end": {
                                "line": 255,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8891,
                              "end": 8892,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 28
                                },
                                "end": {
                                  "line": 255,
                                  "column": 29
                                },
                                "identifierName": "_"
                              },
                              "name": "_"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8893,
                              "end": 8901,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 30
                                },
                                "end": {
                                  "line": 255,
                                  "column": 38
                                },
                                "identifierName": "defaults"
                              },
                              "name": "defaults"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 8902,
                              "end": 8904,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 39
                                },
                                "end": {
                                  "line": 255,
                                  "column": 41
                                }
                              },
                              "properties": []
                            },
                            {
                              "type": "MemberExpression",
                              "start": 8906,
                              "end": 8930,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 43
                                },
                                "end": {
                                  "line": 255,
                                  "column": 67
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 8906,
                                "end": 8910,
                                "loc": {
                                  "start": {
                                    "line": 255,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 255,
                                    "column": 47
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 8911,
                                "end": 8930,
                                "loc": {
                                  "start": {
                                    "line": 255,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 255,
                                    "column": 67
                                  },
                                  "identifierName": "foreignKeyAttribute"
                                },
                                "name": "foreignKeyAttribute"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 8932,
                              "end": 8955,
                              "loc": {
                                "start": {
                                  "line": 255,
                                  "column": 69
                                },
                                "end": {
                                  "line": 255,
                                  "column": 92
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 8934,
                                  "end": 8953,
                                  "loc": {
                                    "start": {
                                      "line": 255,
                                      "column": 71
                                    },
                                    "end": {
                                      "line": 255,
                                      "column": 90
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 8934,
                                    "end": 8938,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 71
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 75
                                      },
                                      "identifierName": "type"
                                    },
                                    "name": "type"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 8940,
                                    "end": 8953,
                                    "loc": {
                                      "start": {
                                        "line": 255,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 255,
                                        "column": 90
                                      },
                                      "identifierName": "sourceKeyType"
                                    },
                                    "name": "sourceKeyType"
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 8962,
                    "end": 9050,
                    "loc": {
                      "start": {
                        "line": 256,
                        "column": 4
                      },
                      "end": {
                        "line": 256,
                        "column": 92
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 8968,
                        "end": 9049,
                        "loc": {
                          "start": {
                            "line": 256,
                            "column": 10
                          },
                          "end": {
                            "line": 256,
                            "column": 91
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 8968,
                          "end": 8983,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 10
                            },
                            "end": {
                              "line": 256,
                              "column": 25
                            },
                            "identifierName": "targetAttribute"
                          },
                          "name": "targetAttribute"
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 8986,
                          "end": 9049,
                          "loc": {
                            "start": {
                              "line": 256,
                              "column": 28
                            },
                            "end": {
                              "line": 256,
                              "column": 91
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 8986,
                            "end": 8996,
                            "loc": {
                              "start": {
                                "line": 256,
                                "column": 28
                              },
                              "end": {
                                "line": 256,
                                "column": 38
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 8986,
                              "end": 8987,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 28
                                },
                                "end": {
                                  "line": 256,
                                  "column": 29
                                },
                                "identifierName": "_"
                              },
                              "name": "_"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 8988,
                              "end": 8996,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 30
                                },
                                "end": {
                                  "line": 256,
                                  "column": 38
                                },
                                "identifierName": "defaults"
                              },
                              "name": "defaults"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 8997,
                              "end": 8999,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 39
                                },
                                "end": {
                                  "line": 256,
                                  "column": 41
                                }
                              },
                              "properties": []
                            },
                            {
                              "type": "MemberExpression",
                              "start": 9001,
                              "end": 9023,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 43
                                },
                                "end": {
                                  "line": 256,
                                  "column": 65
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9001,
                                "end": 9005,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 47
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9006,
                                "end": 9023,
                                "loc": {
                                  "start": {
                                    "line": 256,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 256,
                                    "column": 65
                                  },
                                  "identifierName": "otherKeyAttribute"
                                },
                                "name": "otherKeyAttribute"
                              },
                              "computed": false
                            },
                            {
                              "type": "ObjectExpression",
                              "start": 9025,
                              "end": 9048,
                              "loc": {
                                "start": {
                                  "line": 256,
                                  "column": 67
                                },
                                "end": {
                                  "line": 256,
                                  "column": 90
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 9027,
                                  "end": 9046,
                                  "loc": {
                                    "start": {
                                      "line": 256,
                                      "column": 69
                                    },
                                    "end": {
                                      "line": 256,
                                      "column": 88
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 9027,
                                    "end": 9031,
                                    "loc": {
                                      "start": {
                                        "line": 256,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 256,
                                        "column": 73
                                      },
                                      "identifierName": "type"
                                    },
                                    "name": "type"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 9033,
                                    "end": 9046,
                                    "loc": {
                                      "start": {
                                        "line": 256,
                                        "column": 75
                                      },
                                      "end": {
                                        "line": 256,
                                        "column": 88
                                      },
                                      "identifierName": "targetKeyType"
                                    },
                                    "name": "targetKeyType"
                                  }
                                }
                              ]
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "IfStatement",
                    "start": 9056,
                    "end": 9393,
                    "loc": {
                      "start": {
                        "line": 258,
                        "column": 4
                      },
                      "end": {
                        "line": 263,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 9060,
                      "end": 9091,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 8
                        },
                        "end": {
                          "line": 258,
                          "column": 39
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 9060,
                        "end": 9082,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 8
                          },
                          "end": {
                            "line": 258,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 9060,
                          "end": 9064,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 8
                            },
                            "end": {
                              "line": 258,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9065,
                          "end": 9082,
                          "loc": {
                            "start": {
                              "line": 258,
                              "column": 13
                            },
                            "end": {
                              "line": 258,
                              "column": 30
                            },
                            "identifierName": "primaryKeyDeleted"
                          },
                          "name": "primaryKeyDeleted"
                        },
                        "computed": false
                      },
                      "operator": "===",
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 9087,
                        "end": 9091,
                        "loc": {
                          "start": {
                            "line": 258,
                            "column": 35
                          },
                          "end": {
                            "line": 258,
                            "column": 39
                          }
                        },
                        "value": true
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 9093,
                      "end": 9170,
                      "loc": {
                        "start": {
                          "line": 258,
                          "column": 41
                        },
                        "end": {
                          "line": 260,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 9101,
                          "end": 9164,
                          "loc": {
                            "start": {
                              "line": 259,
                              "column": 6
                            },
                            "end": {
                              "line": 259,
                              "column": 69
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9101,
                            "end": 9163,
                            "loc": {
                              "start": {
                                "line": 259,
                                "column": 6
                              },
                              "end": {
                                "line": 259,
                                "column": 68
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 9101,
                              "end": 9127,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 6
                                },
                                "end": {
                                  "line": 259,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9101,
                                "end": 9116,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 21
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9117,
                                "end": 9127,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 32
                                  },
                                  "identifierName": "primaryKey"
                                },
                                "name": "primaryKey"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "AssignmentExpression",
                              "start": 9130,
                              "end": 9163,
                              "loc": {
                                "start": {
                                  "line": 259,
                                  "column": 35
                                },
                                "end": {
                                  "line": 259,
                                  "column": 68
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 9130,
                                "end": 9156,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 35
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9130,
                                  "end": 9145,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 50
                                    },
                                    "identifierName": "sourceAttribute"
                                  },
                                  "name": "sourceAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9146,
                                  "end": 9156,
                                  "loc": {
                                    "start": {
                                      "line": 259,
                                      "column": 51
                                    },
                                    "end": {
                                      "line": 259,
                                      "column": 61
                                    },
                                    "identifierName": "primaryKey"
                                  },
                                  "name": "primaryKey"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "BooleanLiteral",
                                "start": 9159,
                                "end": 9163,
                                "loc": {
                                  "start": {
                                    "line": 259,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 259,
                                    "column": 68
                                  }
                                },
                                "value": true
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "IfStatement",
                      "start": 9176,
                      "end": 9393,
                      "loc": {
                        "start": {
                          "line": 260,
                          "column": 11
                        },
                        "end": {
                          "line": 263,
                          "column": 5
                        }
                      },
                      "test": {
                        "type": "BinaryExpression",
                        "start": 9180,
                        "end": 9209,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 15
                          },
                          "end": {
                            "line": 260,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 9180,
                          "end": 9199,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 15
                            },
                            "end": {
                              "line": 260,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9180,
                            "end": 9192,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 15
                              },
                              "end": {
                                "line": 260,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 9180,
                              "end": 9184,
                              "loc": {
                                "start": {
                                  "line": 260,
                                  "column": 15
                                },
                                "end": {
                                  "line": 260,
                                  "column": 19
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9185,
                              "end": 9192,
                              "loc": {
                                "start": {
                                  "line": 260,
                                  "column": 20
                                },
                                "end": {
                                  "line": 260,
                                  "column": 27
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9193,
                            "end": 9199,
                            "loc": {
                              "start": {
                                "line": 260,
                                "column": 28
                              },
                              "end": {
                                "line": 260,
                                "column": 34
                              },
                              "identifierName": "unique"
                            },
                            "name": "unique"
                          },
                          "computed": false
                        },
                        "operator": "!==",
                        "right": {
                          "type": "BooleanLiteral",
                          "start": 9204,
                          "end": 9209,
                          "loc": {
                            "start": {
                              "line": 260,
                              "column": 39
                            },
                            "end": {
                              "line": 260,
                              "column": 44
                            }
                          },
                          "value": false
                        }
                      },
                      "consequent": {
                        "type": "BlockStatement",
                        "start": 9211,
                        "end": 9393,
                        "loc": {
                          "start": {
                            "line": 260,
                            "column": 46
                          },
                          "end": {
                            "line": 263,
                            "column": 5
                          }
                        },
                        "body": [
                          {
                            "type": "VariableDeclaration",
                            "start": 9219,
                            "end": 9320,
                            "loc": {
                              "start": {
                                "line": 261,
                                "column": 6
                              },
                              "end": {
                                "line": 261,
                                "column": 107
                              }
                            },
                            "declarations": [
                              {
                                "type": "VariableDeclarator",
                                "start": 9225,
                                "end": 9319,
                                "loc": {
                                  "start": {
                                    "line": 261,
                                    "column": 12
                                  },
                                  "end": {
                                    "line": 261,
                                    "column": 106
                                  }
                                },
                                "id": {
                                  "type": "Identifier",
                                  "start": 9225,
                                  "end": 9234,
                                  "loc": {
                                    "start": {
                                      "line": 261,
                                      "column": 12
                                    },
                                    "end": {
                                      "line": 261,
                                      "column": 21
                                    },
                                    "identifierName": "uniqueKey"
                                  },
                                  "name": "uniqueKey"
                                },
                                "init": {
                                  "type": "CallExpression",
                                  "start": 9237,
                                  "end": 9319,
                                  "loc": {
                                    "start": {
                                      "line": 261,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 261,
                                      "column": 106
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 9237,
                                    "end": 9314,
                                    "loc": {
                                      "start": {
                                        "line": 261,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 261,
                                        "column": 101
                                      }
                                    },
                                    "object": {
                                      "type": "ArrayExpression",
                                      "start": 9237,
                                      "end": 9309,
                                      "loc": {
                                        "start": {
                                          "line": 261,
                                          "column": 24
                                        },
                                        "end": {
                                          "line": 261,
                                          "column": 96
                                        }
                                      },
                                      "elements": [
                                        {
                                          "type": "MemberExpression",
                                          "start": 9238,
                                          "end": 9266,
                                          "loc": {
                                            "start": {
                                              "line": 261,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 261,
                                              "column": 53
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 9238,
                                            "end": 9256,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 43
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 9238,
                                              "end": 9250,
                                              "loc": {
                                                "start": {
                                                  "line": 261,
                                                  "column": 25
                                                },
                                                "end": {
                                                  "line": 261,
                                                  "column": 37
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 9238,
                                                "end": 9242,
                                                "loc": {
                                                  "start": {
                                                    "line": 261,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 261,
                                                    "column": 29
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 9243,
                                                "end": 9250,
                                                "loc": {
                                                  "start": {
                                                    "line": 261,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 261,
                                                    "column": 37
                                                  },
                                                  "identifierName": "through"
                                                },
                                                "name": "through"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 9251,
                                              "end": 9256,
                                              "loc": {
                                                "start": {
                                                  "line": 261,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 261,
                                                  "column": 43
                                                },
                                                "identifierName": "model"
                                              },
                                              "name": "model"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9257,
                                            "end": 9266,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 44
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 53
                                              },
                                              "identifierName": "tableName"
                                            },
                                            "name": "tableName"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "MemberExpression",
                                          "start": 9268,
                                          "end": 9283,
                                          "loc": {
                                            "start": {
                                              "line": 261,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 261,
                                              "column": 70
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 9268,
                                            "end": 9272,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 55
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 59
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9273,
                                            "end": 9283,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 60
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 70
                                              },
                                              "identifierName": "foreignKey"
                                            },
                                            "name": "foreignKey"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "MemberExpression",
                                          "start": 9285,
                                          "end": 9298,
                                          "loc": {
                                            "start": {
                                              "line": 261,
                                              "column": 72
                                            },
                                            "end": {
                                              "line": 261,
                                              "column": 85
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 9285,
                                            "end": 9289,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 72
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 76
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 9290,
                                            "end": 9298,
                                            "loc": {
                                              "start": {
                                                "line": 261,
                                                "column": 77
                                              },
                                              "end": {
                                                "line": 261,
                                                "column": 85
                                              },
                                              "identifierName": "otherKey"
                                            },
                                            "name": "otherKey"
                                          },
                                          "computed": false
                                        },
                                        {
                                          "type": "StringLiteral",
                                          "start": 9300,
                                          "end": 9308,
                                          "loc": {
                                            "start": {
                                              "line": 261,
                                              "column": 87
                                            },
                                            "end": {
                                              "line": 261,
                                              "column": 95
                                            }
                                          },
                                          "extra": {
                                            "rawValue": "unique",
                                            "raw": "'unique'"
                                          },
                                          "value": "unique"
                                        }
                                      ]
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9310,
                                      "end": 9314,
                                      "loc": {
                                        "start": {
                                          "line": 261,
                                          "column": 97
                                        },
                                        "end": {
                                          "line": 261,
                                          "column": 101
                                        },
                                        "identifierName": "join"
                                      },
                                      "name": "join"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "StringLiteral",
                                      "start": 9315,
                                      "end": 9318,
                                      "loc": {
                                        "start": {
                                          "line": 261,
                                          "column": 102
                                        },
                                        "end": {
                                          "line": 261,
                                          "column": 105
                                        }
                                      },
                                      "extra": {
                                        "rawValue": "_",
                                        "raw": "'_'"
                                      },
                                      "value": "_"
                                    }
                                  ]
                                }
                              }
                            ],
                            "kind": "const"
                          },
                          {
                            "type": "ExpressionStatement",
                            "start": 9327,
                            "end": 9387,
                            "loc": {
                              "start": {
                                "line": 262,
                                "column": 6
                              },
                              "end": {
                                "line": 262,
                                "column": 66
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 9327,
                              "end": 9386,
                              "loc": {
                                "start": {
                                  "line": 262,
                                  "column": 6
                                },
                                "end": {
                                  "line": 262,
                                  "column": 65
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 9327,
                                "end": 9349,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 28
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 9327,
                                  "end": 9342,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 21
                                    },
                                    "identifierName": "targetAttribute"
                                  },
                                  "name": "targetAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9343,
                                  "end": 9349,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 22
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 28
                                    },
                                    "identifierName": "unique"
                                  },
                                  "name": "unique"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "AssignmentExpression",
                                "start": 9352,
                                "end": 9386,
                                "loc": {
                                  "start": {
                                    "line": 262,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 262,
                                    "column": 65
                                  }
                                },
                                "operator": "=",
                                "left": {
                                  "type": "MemberExpression",
                                  "start": 9352,
                                  "end": 9374,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 53
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 9352,
                                    "end": 9367,
                                    "loc": {
                                      "start": {
                                        "line": 262,
                                        "column": 31
                                      },
                                      "end": {
                                        "line": 262,
                                        "column": 46
                                      },
                                      "identifierName": "sourceAttribute"
                                    },
                                    "name": "sourceAttribute"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9368,
                                    "end": 9374,
                                    "loc": {
                                      "start": {
                                        "line": 262,
                                        "column": 47
                                      },
                                      "end": {
                                        "line": 262,
                                        "column": 53
                                      },
                                      "identifierName": "unique"
                                    },
                                    "name": "unique"
                                  },
                                  "computed": false
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 9377,
                                  "end": 9386,
                                  "loc": {
                                    "start": {
                                      "line": 262,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 262,
                                      "column": 65
                                    },
                                    "identifierName": "uniqueKey"
                                  },
                                  "name": "uniqueKey"
                                }
                              }
                            }
                          }
                        ],
                        "directives": []
                      },
                      "alternate": null
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 9399,
                    "end": 9560,
                    "loc": {
                      "start": {
                        "line": 265,
                        "column": 4
                      },
                      "end": {
                        "line": 269,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 9403,
                      "end": 9453,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 8
                        },
                        "end": {
                          "line": 265,
                          "column": 58
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 9404,
                        "end": 9453,
                        "loc": {
                          "start": {
                            "line": 265,
                            "column": 9
                          },
                          "end": {
                            "line": 265,
                            "column": 58
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9404,
                          "end": 9436,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 9
                            },
                            "end": {
                              "line": 265,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9404,
                            "end": 9422,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 9
                              },
                              "end": {
                                "line": 265,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9404,
                              "end": 9416,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 9
                                },
                                "end": {
                                  "line": 265,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9404,
                                "end": 9408,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 13
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9409,
                                "end": 9416,
                                "loc": {
                                  "start": {
                                    "line": 265,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 265,
                                    "column": 21
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9417,
                              "end": 9422,
                              "loc": {
                                "start": {
                                  "line": 265,
                                  "column": 22
                                },
                                "end": {
                                  "line": 265,
                                  "column": 27
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9423,
                            "end": 9436,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 28
                              },
                              "end": {
                                "line": 265,
                                "column": 41
                              },
                              "identifierName": "rawAttributes"
                            },
                            "name": "rawAttributes"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 9437,
                          "end": 9452,
                          "loc": {
                            "start": {
                              "line": 265,
                              "column": 42
                            },
                            "end": {
                              "line": 265,
                              "column": 57
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9437,
                            "end": 9441,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 42
                              },
                              "end": {
                                "line": 265,
                                "column": 46
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9442,
                            "end": 9452,
                            "loc": {
                              "start": {
                                "line": 265,
                                "column": 47
                              },
                              "end": {
                                "line": 265,
                                "column": 57
                              },
                              "identifierName": "foreignKey"
                            },
                            "name": "foreignKey"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 9455,
                      "end": 9560,
                      "loc": {
                        "start": {
                          "line": 265,
                          "column": 60
                        },
                        "end": {
                          "line": 269,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 9463,
                          "end": 9554,
                          "loc": {
                            "start": {
                              "line": 266,
                              "column": 6
                            },
                            "end": {
                              "line": 268,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9463,
                            "end": 9553,
                            "loc": {
                              "start": {
                                "line": 266,
                                "column": 6
                              },
                              "end": {
                                "line": 268,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 9463,
                              "end": 9512,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 6
                                },
                                "end": {
                                  "line": 266,
                                  "column": 55
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9463,
                                "end": 9495,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9463,
                                  "end": 9481,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9463,
                                    "end": 9475,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 18
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 9463,
                                      "end": 9467,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 10
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9468,
                                      "end": 9475,
                                      "loc": {
                                        "start": {
                                          "line": 266,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 266,
                                          "column": 18
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9476,
                                    "end": 9481,
                                    "loc": {
                                      "start": {
                                        "line": 266,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 266,
                                        "column": 24
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9482,
                                  "end": 9495,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 38
                                    },
                                    "identifierName": "rawAttributes"
                                  },
                                  "name": "rawAttributes"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "MemberExpression",
                                "start": 9496,
                                "end": 9511,
                                "loc": {
                                  "start": {
                                    "line": 266,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 266,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9496,
                                  "end": 9500,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9501,
                                  "end": 9511,
                                  "loc": {
                                    "start": {
                                      "line": 266,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 266,
                                      "column": 54
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "computed": false
                              },
                              "computed": true
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 9515,
                              "end": 9553,
                              "loc": {
                                "start": {
                                  "line": 266,
                                  "column": 58
                                },
                                "end": {
                                  "line": 268,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 9525,
                                  "end": 9545,
                                  "loc": {
                                    "start": {
                                      "line": 267,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 267,
                                      "column": 28
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 9525,
                                    "end": 9539,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 22
                                      },
                                      "identifierName": "_autoGenerated"
                                    },
                                    "name": "_autoGenerated"
                                  },
                                  "value": {
                                    "type": "BooleanLiteral",
                                    "start": 9541,
                                    "end": 9545,
                                    "loc": {
                                      "start": {
                                        "line": 267,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 267,
                                        "column": 28
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 9566,
                    "end": 9723,
                    "loc": {
                      "start": {
                        "line": 271,
                        "column": 4
                      },
                      "end": {
                        "line": 275,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 9570,
                      "end": 9618,
                      "loc": {
                        "start": {
                          "line": 271,
                          "column": 8
                        },
                        "end": {
                          "line": 271,
                          "column": 56
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "MemberExpression",
                        "start": 9571,
                        "end": 9618,
                        "loc": {
                          "start": {
                            "line": 271,
                            "column": 9
                          },
                          "end": {
                            "line": 271,
                            "column": 56
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9571,
                          "end": 9603,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 9
                            },
                            "end": {
                              "line": 271,
                              "column": 41
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 9571,
                            "end": 9589,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 9
                              },
                              "end": {
                                "line": 271,
                                "column": 27
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 9571,
                              "end": 9583,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 9
                                },
                                "end": {
                                  "line": 271,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 9571,
                                "end": 9575,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 13
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9576,
                                "end": 9583,
                                "loc": {
                                  "start": {
                                    "line": 271,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 271,
                                    "column": 21
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 9584,
                              "end": 9589,
                              "loc": {
                                "start": {
                                  "line": 271,
                                  "column": 22
                                },
                                "end": {
                                  "line": 271,
                                  "column": 27
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9590,
                            "end": 9603,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 28
                              },
                              "end": {
                                "line": 271,
                                "column": 41
                              },
                              "identifierName": "rawAttributes"
                            },
                            "name": "rawAttributes"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 9604,
                          "end": 9617,
                          "loc": {
                            "start": {
                              "line": 271,
                              "column": 42
                            },
                            "end": {
                              "line": 271,
                              "column": 55
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9604,
                            "end": 9608,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 42
                              },
                              "end": {
                                "line": 271,
                                "column": 46
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9609,
                            "end": 9617,
                            "loc": {
                              "start": {
                                "line": 271,
                                "column": 47
                              },
                              "end": {
                                "line": 271,
                                "column": 55
                              },
                              "identifierName": "otherKey"
                            },
                            "name": "otherKey"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 9620,
                      "end": 9723,
                      "loc": {
                        "start": {
                          "line": 271,
                          "column": 58
                        },
                        "end": {
                          "line": 275,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 9628,
                          "end": 9717,
                          "loc": {
                            "start": {
                              "line": 272,
                              "column": 6
                            },
                            "end": {
                              "line": 274,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9628,
                            "end": 9716,
                            "loc": {
                              "start": {
                                "line": 272,
                                "column": 6
                              },
                              "end": {
                                "line": 274,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 9628,
                              "end": 9675,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 6
                                },
                                "end": {
                                  "line": 272,
                                  "column": 53
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 9628,
                                "end": 9660,
                                "loc": {
                                  "start": {
                                    "line": 272,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 272,
                                    "column": 38
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9628,
                                  "end": 9646,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 24
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 9628,
                                    "end": 9640,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 18
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 9628,
                                      "end": 9632,
                                      "loc": {
                                        "start": {
                                          "line": 272,
                                          "column": 6
                                        },
                                        "end": {
                                          "line": 272,
                                          "column": 10
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 9633,
                                      "end": 9640,
                                      "loc": {
                                        "start": {
                                          "line": 272,
                                          "column": 11
                                        },
                                        "end": {
                                          "line": 272,
                                          "column": 18
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9641,
                                    "end": 9646,
                                    "loc": {
                                      "start": {
                                        "line": 272,
                                        "column": 19
                                      },
                                      "end": {
                                        "line": 272,
                                        "column": 24
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9647,
                                  "end": 9660,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 25
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 38
                                    },
                                    "identifierName": "rawAttributes"
                                  },
                                  "name": "rawAttributes"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "MemberExpression",
                                "start": 9661,
                                "end": 9674,
                                "loc": {
                                  "start": {
                                    "line": 272,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 272,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 9661,
                                  "end": 9665,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 39
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 43
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 9666,
                                  "end": 9674,
                                  "loc": {
                                    "start": {
                                      "line": 272,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 272,
                                      "column": 52
                                    },
                                    "identifierName": "otherKey"
                                  },
                                  "name": "otherKey"
                                },
                                "computed": false
                              },
                              "computed": true
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 9678,
                              "end": 9716,
                              "loc": {
                                "start": {
                                  "line": 272,
                                  "column": 56
                                },
                                "end": {
                                  "line": 274,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 9688,
                                  "end": 9708,
                                  "loc": {
                                    "start": {
                                      "line": 273,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 273,
                                      "column": 28
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 9688,
                                    "end": 9702,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 22
                                      },
                                      "identifierName": "_autoGenerated"
                                    },
                                    "name": "_autoGenerated"
                                  },
                                  "value": {
                                    "type": "BooleanLiteral",
                                    "start": 9704,
                                    "end": 9708,
                                    "loc": {
                                      "start": {
                                        "line": 273,
                                        "column": 24
                                      },
                                      "end": {
                                        "line": 273,
                                        "column": 28
                                      }
                                    },
                                    "value": true
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 9729,
                    "end": 10996,
                    "loc": {
                      "start": {
                        "line": 277,
                        "column": 4
                      },
                      "end": {
                        "line": 299,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 9733,
                      "end": 9767,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 8
                        },
                        "end": {
                          "line": 277,
                          "column": 42
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 9733,
                        "end": 9757,
                        "loc": {
                          "start": {
                            "line": 277,
                            "column": 8
                          },
                          "end": {
                            "line": 277,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 9733,
                          "end": 9745,
                          "loc": {
                            "start": {
                              "line": 277,
                              "column": 8
                            },
                            "end": {
                              "line": 277,
                              "column": 20
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 9733,
                            "end": 9737,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 8
                              },
                              "end": {
                                "line": 277,
                                "column": 12
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 9738,
                            "end": 9745,
                            "loc": {
                              "start": {
                                "line": 277,
                                "column": 13
                              },
                              "end": {
                                "line": 277,
                                "column": 20
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 9746,
                          "end": 9757,
                          "loc": {
                            "start": {
                              "line": 277,
                              "column": 21
                            },
                            "end": {
                              "line": 277,
                              "column": 32
                            },
                            "identifierName": "constraints"
                          },
                          "name": "constraints"
                        },
                        "computed": false
                      },
                      "operator": "!==",
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 9762,
                        "end": 9767,
                        "loc": {
                          "start": {
                            "line": 277,
                            "column": 37
                          },
                          "end": {
                            "line": 277,
                            "column": 42
                          }
                        },
                        "value": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 9769,
                      "end": 10996,
                      "loc": {
                        "start": {
                          "line": 277,
                          "column": 44
                        },
                        "end": {
                          "line": 299,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 9777,
                          "end": 9889,
                          "loc": {
                            "start": {
                              "line": 278,
                              "column": 6
                            },
                            "end": {
                              "line": 281,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9777,
                            "end": 9888,
                            "loc": {
                              "start": {
                                "line": 278,
                                "column": 6
                              },
                              "end": {
                                "line": 281,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 9777,
                              "end": 9803,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 6
                                },
                                "end": {
                                  "line": 278,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9777,
                                "end": 9792,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 21
                                  },
                                  "identifierName": "sourceAttribute"
                                },
                                "name": "sourceAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9793,
                                "end": 9803,
                                "loc": {
                                  "start": {
                                    "line": 278,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 278,
                                    "column": 32
                                  },
                                  "identifierName": "references"
                                },
                                "name": "references"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 9806,
                              "end": 9888,
                              "loc": {
                                "start": {
                                  "line": 278,
                                  "column": 35
                                },
                                "end": {
                                  "line": 281,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 9816,
                                  "end": 9849,
                                  "loc": {
                                    "start": {
                                      "line": 279,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 279,
                                      "column": 41
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 9816,
                                    "end": 9821,
                                    "loc": {
                                      "start": {
                                        "line": 279,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 279,
                                        "column": 13
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "value": {
                                    "type": "CallExpression",
                                    "start": 9823,
                                    "end": 9849,
                                    "loc": {
                                      "start": {
                                        "line": 279,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 279,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 9823,
                                      "end": 9847,
                                      "loc": {
                                        "start": {
                                          "line": 279,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 279,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 9823,
                                        "end": 9834,
                                        "loc": {
                                          "start": {
                                            "line": 279,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 279,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 9823,
                                          "end": 9827,
                                          "loc": {
                                            "start": {
                                              "line": 279,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 279,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 9828,
                                          "end": 9834,
                                          "loc": {
                                            "start": {
                                              "line": 279,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 279,
                                              "column": 26
                                            },
                                            "identifierName": "source"
                                          },
                                          "name": "source"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 9835,
                                        "end": 9847,
                                        "loc": {
                                          "start": {
                                            "line": 279,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 279,
                                            "column": 39
                                          },
                                          "identifierName": "getTableName"
                                        },
                                        "name": "getTableName"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ObjectProperty",
                                  "start": 9859,
                                  "end": 9880,
                                  "loc": {
                                    "start": {
                                      "line": 280,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 280,
                                      "column": 29
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 9859,
                                    "end": 9862,
                                    "loc": {
                                      "start": {
                                        "line": 280,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 280,
                                        "column": 11
                                      },
                                      "identifierName": "key"
                                    },
                                    "name": "key"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 9866,
                                    "end": 9880,
                                    "loc": {
                                      "start": {
                                        "line": 280,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 280,
                                        "column": 29
                                      },
                                      "identifierName": "sourceKeyField"
                                    },
                                    "name": "sourceKeyField"
                                  }
                                }
                              ]
                            }
                          },
                          "trailingComments": [
                            {
                              "type": "CommentLine",
                              "value": " For the source attribute the passed option is the priority",
                              "start": 9896,
                              "end": 9957,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 6
                                },
                                "end": {
                                  "line": 282,
                                  "column": 67
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 9964,
                          "end": 10075,
                          "loc": {
                            "start": {
                              "line": 283,
                              "column": 6
                            },
                            "end": {
                              "line": 283,
                              "column": 117
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 9964,
                            "end": 10074,
                            "loc": {
                              "start": {
                                "line": 283,
                                "column": 6
                              },
                              "end": {
                                "line": 283,
                                "column": 116
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 9964,
                              "end": 9988,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 6
                                },
                                "end": {
                                  "line": 283,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 9964,
                                "end": 9979,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 21
                                  },
                                  "identifierName": "sourceAttribute"
                                },
                                "name": "sourceAttribute",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 9980,
                                "end": 9988,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 30
                                  },
                                  "identifierName": "onDelete"
                                },
                                "name": "onDelete"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 9991,
                              "end": 10074,
                              "loc": {
                                "start": {
                                  "line": 283,
                                  "column": 33
                                },
                                "end": {
                                  "line": 283,
                                  "column": 116
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 9991,
                                "end": 10012,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 9991,
                                  "end": 10003,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 9991,
                                    "end": 9995,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 37
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 9996,
                                    "end": 10003,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 45
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10004,
                                  "end": 10012,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 54
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 10016,
                                "end": 10074,
                                "loc": {
                                  "start": {
                                    "line": 283,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 283,
                                    "column": 116
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10016,
                                  "end": 10065,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 107
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10016,
                                    "end": 10048,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 90
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10016,
                                      "end": 10034,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 76
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10016,
                                        "end": 10028,
                                        "loc": {
                                          "start": {
                                            "line": 283,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 283,
                                            "column": 70
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10016,
                                          "end": 10020,
                                          "loc": {
                                            "start": {
                                              "line": 283,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 283,
                                              "column": 62
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10021,
                                          "end": 10028,
                                          "loc": {
                                            "start": {
                                              "line": 283,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 283,
                                              "column": 70
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10029,
                                        "end": 10034,
                                        "loc": {
                                          "start": {
                                            "line": 283,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 283,
                                            "column": 76
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10035,
                                      "end": 10048,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 77
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 90
                                        },
                                        "identifierName": "rawAttributes"
                                      },
                                      "name": "rawAttributes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 10049,
                                    "end": 10064,
                                    "loc": {
                                      "start": {
                                        "line": 283,
                                        "column": 91
                                      },
                                      "end": {
                                        "line": 283,
                                        "column": 106
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10049,
                                      "end": 10053,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 91
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 95
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10054,
                                      "end": 10064,
                                      "loc": {
                                        "start": {
                                          "line": 283,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 283,
                                          "column": 106
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10066,
                                  "end": 10074,
                                  "loc": {
                                    "start": {
                                      "line": 283,
                                      "column": 108
                                    },
                                    "end": {
                                      "line": 283,
                                      "column": 116
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              }
                            },
                            "leadingComments": null
                          },
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": " For the source attribute the passed option is the priority",
                              "start": 9896,
                              "end": 9957,
                              "loc": {
                                "start": {
                                  "line": 282,
                                  "column": 6
                                },
                                "end": {
                                  "line": 282,
                                  "column": 67
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 10082,
                          "end": 10193,
                          "loc": {
                            "start": {
                              "line": 284,
                              "column": 6
                            },
                            "end": {
                              "line": 284,
                              "column": 117
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 10082,
                            "end": 10192,
                            "loc": {
                              "start": {
                                "line": 284,
                                "column": 6
                              },
                              "end": {
                                "line": 284,
                                "column": 116
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 10082,
                              "end": 10106,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 6
                                },
                                "end": {
                                  "line": 284,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10082,
                                "end": 10097,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 21
                                  },
                                  "identifierName": "sourceAttribute"
                                },
                                "name": "sourceAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10098,
                                "end": 10106,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 30
                                  },
                                  "identifierName": "onUpdate"
                                },
                                "name": "onUpdate"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 10109,
                              "end": 10192,
                              "loc": {
                                "start": {
                                  "line": 284,
                                  "column": 33
                                },
                                "end": {
                                  "line": 284,
                                  "column": 116
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 10109,
                                "end": 10130,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 54
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10109,
                                  "end": 10121,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 45
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10109,
                                    "end": 10113,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 37
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10114,
                                    "end": 10121,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 38
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 45
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10122,
                                  "end": 10130,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 46
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 54
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 10134,
                                "end": 10192,
                                "loc": {
                                  "start": {
                                    "line": 284,
                                    "column": 58
                                  },
                                  "end": {
                                    "line": 284,
                                    "column": 116
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10134,
                                  "end": 10183,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 107
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10134,
                                    "end": 10166,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 90
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10134,
                                      "end": 10152,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 76
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10134,
                                        "end": 10146,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 58
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 70
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10134,
                                          "end": 10138,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 58
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 62
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10139,
                                          "end": 10146,
                                          "loc": {
                                            "start": {
                                              "line": 284,
                                              "column": 63
                                            },
                                            "end": {
                                              "line": 284,
                                              "column": 70
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10147,
                                        "end": 10152,
                                        "loc": {
                                          "start": {
                                            "line": 284,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 284,
                                            "column": 76
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10153,
                                      "end": 10166,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 77
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 90
                                        },
                                        "identifierName": "rawAttributes"
                                      },
                                      "name": "rawAttributes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 10167,
                                    "end": 10182,
                                    "loc": {
                                      "start": {
                                        "line": 284,
                                        "column": 91
                                      },
                                      "end": {
                                        "line": 284,
                                        "column": 106
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10167,
                                      "end": 10171,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 91
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 95
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10172,
                                      "end": 10182,
                                      "loc": {
                                        "start": {
                                          "line": 284,
                                          "column": 96
                                        },
                                        "end": {
                                          "line": 284,
                                          "column": 106
                                        },
                                        "identifierName": "foreignKey"
                                      },
                                      "name": "foreignKey"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10184,
                                  "end": 10192,
                                  "loc": {
                                    "start": {
                                      "line": 284,
                                      "column": 108
                                    },
                                    "end": {
                                      "line": 284,
                                      "column": 116
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              }
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 10201,
                          "end": 10269,
                          "loc": {
                            "start": {
                              "line": 286,
                              "column": 6
                            },
                            "end": {
                              "line": 286,
                              "column": 74
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 10205,
                            "end": 10230,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 10
                              },
                              "end": {
                                "line": 286,
                                "column": 35
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 10206,
                              "end": 10230,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 11
                                },
                                "end": {
                                  "line": 286,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10206,
                                "end": 10221,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 26
                                  },
                                  "identifierName": "sourceAttribute"
                                },
                                "name": "sourceAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10222,
                                "end": 10230,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 35
                                  },
                                  "identifierName": "onDelete"
                                },
                                "name": "onDelete"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 10232,
                            "end": 10269,
                            "loc": {
                              "start": {
                                "line": 286,
                                "column": 37
                              },
                              "end": {
                                "line": 286,
                                "column": 74
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10232,
                              "end": 10268,
                              "loc": {
                                "start": {
                                  "line": 286,
                                  "column": 37
                                },
                                "end": {
                                  "line": 286,
                                  "column": 73
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10232,
                                "end": 10256,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 10232,
                                  "end": 10247,
                                  "loc": {
                                    "start": {
                                      "line": 286,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 286,
                                      "column": 52
                                    },
                                    "identifierName": "sourceAttribute"
                                  },
                                  "name": "sourceAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10248,
                                  "end": 10256,
                                  "loc": {
                                    "start": {
                                      "line": 286,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 286,
                                      "column": 61
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "StringLiteral",
                                "start": 10259,
                                "end": 10268,
                                "loc": {
                                  "start": {
                                    "line": 286,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 286,
                                    "column": 73
                                  }
                                },
                                "extra": {
                                  "rawValue": "CASCADE",
                                  "raw": "'CASCADE'"
                                },
                                "value": "CASCADE"
                              }
                            }
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 10276,
                          "end": 10344,
                          "loc": {
                            "start": {
                              "line": 287,
                              "column": 6
                            },
                            "end": {
                              "line": 287,
                              "column": 74
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 10280,
                            "end": 10305,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 10
                              },
                              "end": {
                                "line": 287,
                                "column": 35
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 10281,
                              "end": 10305,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 11
                                },
                                "end": {
                                  "line": 287,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10281,
                                "end": 10296,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 26
                                  },
                                  "identifierName": "sourceAttribute"
                                },
                                "name": "sourceAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10297,
                                "end": 10305,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 35
                                  },
                                  "identifierName": "onUpdate"
                                },
                                "name": "onUpdate"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 10307,
                            "end": 10344,
                            "loc": {
                              "start": {
                                "line": 287,
                                "column": 37
                              },
                              "end": {
                                "line": 287,
                                "column": 74
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10307,
                              "end": 10343,
                              "loc": {
                                "start": {
                                  "line": 287,
                                  "column": 37
                                },
                                "end": {
                                  "line": 287,
                                  "column": 73
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10307,
                                "end": 10331,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 10307,
                                  "end": 10322,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 52
                                    },
                                    "identifierName": "sourceAttribute"
                                  },
                                  "name": "sourceAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10323,
                                  "end": 10331,
                                  "loc": {
                                    "start": {
                                      "line": 287,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 287,
                                      "column": 61
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "StringLiteral",
                                "start": 10334,
                                "end": 10343,
                                "loc": {
                                  "start": {
                                    "line": 287,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 287,
                                    "column": 73
                                  }
                                },
                                "extra": {
                                  "rawValue": "CASCADE",
                                  "raw": "'CASCADE'"
                                },
                                "value": "CASCADE"
                              }
                            }
                          },
                          "alternate": null
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 10352,
                          "end": 10464,
                          "loc": {
                            "start": {
                              "line": 289,
                              "column": 6
                            },
                            "end": {
                              "line": 292,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 10352,
                            "end": 10463,
                            "loc": {
                              "start": {
                                "line": 289,
                                "column": 6
                              },
                              "end": {
                                "line": 292,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 10352,
                              "end": 10378,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 6
                                },
                                "end": {
                                  "line": 289,
                                  "column": 32
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10352,
                                "end": 10367,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 21
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10368,
                                "end": 10378,
                                "loc": {
                                  "start": {
                                    "line": 289,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 289,
                                    "column": 32
                                  },
                                  "identifierName": "references"
                                },
                                "name": "references"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 10381,
                              "end": 10463,
                              "loc": {
                                "start": {
                                  "line": 289,
                                  "column": 35
                                },
                                "end": {
                                  "line": 292,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 10391,
                                  "end": 10424,
                                  "loc": {
                                    "start": {
                                      "line": 290,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 290,
                                      "column": 41
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10391,
                                    "end": 10396,
                                    "loc": {
                                      "start": {
                                        "line": 290,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 290,
                                        "column": 13
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "value": {
                                    "type": "CallExpression",
                                    "start": 10398,
                                    "end": 10424,
                                    "loc": {
                                      "start": {
                                        "line": 290,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 290,
                                        "column": 41
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 10398,
                                      "end": 10422,
                                      "loc": {
                                        "start": {
                                          "line": 290,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 290,
                                          "column": 39
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10398,
                                        "end": 10409,
                                        "loc": {
                                          "start": {
                                            "line": 290,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 290,
                                            "column": 26
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10398,
                                          "end": 10402,
                                          "loc": {
                                            "start": {
                                              "line": 290,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 290,
                                              "column": 19
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10403,
                                          "end": 10409,
                                          "loc": {
                                            "start": {
                                              "line": 290,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 290,
                                              "column": 26
                                            },
                                            "identifierName": "target"
                                          },
                                          "name": "target"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10410,
                                        "end": 10422,
                                        "loc": {
                                          "start": {
                                            "line": 290,
                                            "column": 27
                                          },
                                          "end": {
                                            "line": 290,
                                            "column": 39
                                          },
                                          "identifierName": "getTableName"
                                        },
                                        "name": "getTableName"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                },
                                {
                                  "type": "ObjectProperty",
                                  "start": 10434,
                                  "end": 10455,
                                  "loc": {
                                    "start": {
                                      "line": 291,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 291,
                                      "column": 29
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 10434,
                                    "end": 10437,
                                    "loc": {
                                      "start": {
                                        "line": 291,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 291,
                                        "column": 11
                                      },
                                      "identifierName": "key"
                                    },
                                    "name": "key"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 10441,
                                    "end": 10455,
                                    "loc": {
                                      "start": {
                                        "line": 291,
                                        "column": 15
                                      },
                                      "end": {
                                        "line": 291,
                                        "column": 29
                                      },
                                      "identifierName": "targetKeyField"
                                    },
                                    "name": "targetKeyField"
                                  }
                                }
                              ]
                            }
                          },
                          "trailingComments": [
                            {
                              "type": "CommentLine",
                              "value": " But the for target attribute the previously defined option is the priority (since it could've been set by another belongsToMany call)",
                              "start": 10471,
                              "end": 10607,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 6
                                },
                                "end": {
                                  "line": 293,
                                  "column": 142
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 10614,
                          "end": 10723,
                          "loc": {
                            "start": {
                              "line": 294,
                              "column": 6
                            },
                            "end": {
                              "line": 294,
                              "column": 115
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 10614,
                            "end": 10722,
                            "loc": {
                              "start": {
                                "line": 294,
                                "column": 6
                              },
                              "end": {
                                "line": 294,
                                "column": 114
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 10614,
                              "end": 10638,
                              "loc": {
                                "start": {
                                  "line": 294,
                                  "column": 6
                                },
                                "end": {
                                  "line": 294,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10614,
                                "end": 10629,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 21
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10630,
                                "end": 10638,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 30
                                  },
                                  "identifierName": "onDelete"
                                },
                                "name": "onDelete"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 10641,
                              "end": 10722,
                              "loc": {
                                "start": {
                                  "line": 294,
                                  "column": 33
                                },
                                "end": {
                                  "line": 294,
                                  "column": 114
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 10641,
                                "end": 10697,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 89
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10641,
                                  "end": 10688,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 80
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10641,
                                    "end": 10673,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10641,
                                      "end": 10659,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10641,
                                        "end": 10653,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10641,
                                          "end": 10645,
                                          "loc": {
                                            "start": {
                                              "line": 294,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 294,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10646,
                                          "end": 10653,
                                          "loc": {
                                            "start": {
                                              "line": 294,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 294,
                                              "column": 45
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10654,
                                        "end": 10659,
                                        "loc": {
                                          "start": {
                                            "line": 294,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 294,
                                            "column": 51
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10660,
                                      "end": 10673,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 65
                                        },
                                        "identifierName": "rawAttributes"
                                      },
                                      "name": "rawAttributes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 10674,
                                    "end": 10687,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 79
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10674,
                                      "end": 10678,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 70
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10679,
                                      "end": 10687,
                                      "loc": {
                                        "start": {
                                          "line": 294,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 294,
                                          "column": 79
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10689,
                                  "end": 10697,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 89
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 10701,
                                "end": 10722,
                                "loc": {
                                  "start": {
                                    "line": 294,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 294,
                                    "column": 114
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10701,
                                  "end": 10713,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 93
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 105
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10701,
                                    "end": 10705,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 97
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10706,
                                    "end": 10713,
                                    "loc": {
                                      "start": {
                                        "line": 294,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 294,
                                        "column": 105
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10714,
                                  "end": 10722,
                                  "loc": {
                                    "start": {
                                      "line": 294,
                                      "column": 106
                                    },
                                    "end": {
                                      "line": 294,
                                      "column": 114
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              }
                            },
                            "leadingComments": null
                          },
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": " But the for target attribute the previously defined option is the priority (since it could've been set by another belongsToMany call)",
                              "start": 10471,
                              "end": 10607,
                              "loc": {
                                "start": {
                                  "line": 293,
                                  "column": 6
                                },
                                "end": {
                                  "line": 293,
                                  "column": 142
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 10730,
                          "end": 10839,
                          "loc": {
                            "start": {
                              "line": 295,
                              "column": 6
                            },
                            "end": {
                              "line": 295,
                              "column": 115
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 10730,
                            "end": 10838,
                            "loc": {
                              "start": {
                                "line": 295,
                                "column": 6
                              },
                              "end": {
                                "line": 295,
                                "column": 114
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 10730,
                              "end": 10754,
                              "loc": {
                                "start": {
                                  "line": 295,
                                  "column": 6
                                },
                                "end": {
                                  "line": 295,
                                  "column": 30
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10730,
                                "end": 10745,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 21
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10746,
                                "end": 10754,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 30
                                  },
                                  "identifierName": "onUpdate"
                                },
                                "name": "onUpdate"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 10757,
                              "end": 10838,
                              "loc": {
                                "start": {
                                  "line": 295,
                                  "column": 33
                                },
                                "end": {
                                  "line": 295,
                                  "column": 114
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 10757,
                                "end": 10813,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 89
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10757,
                                  "end": 10804,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 33
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 80
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 10757,
                                    "end": 10789,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 33
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 65
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 10757,
                                      "end": 10775,
                                      "loc": {
                                        "start": {
                                          "line": 295,
                                          "column": 33
                                        },
                                        "end": {
                                          "line": 295,
                                          "column": 51
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 10757,
                                        "end": 10769,
                                        "loc": {
                                          "start": {
                                            "line": 295,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 295,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 10757,
                                          "end": 10761,
                                          "loc": {
                                            "start": {
                                              "line": 295,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 295,
                                              "column": 37
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 10762,
                                          "end": 10769,
                                          "loc": {
                                            "start": {
                                              "line": 295,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 295,
                                              "column": 45
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 10770,
                                        "end": 10775,
                                        "loc": {
                                          "start": {
                                            "line": 295,
                                            "column": 46
                                          },
                                          "end": {
                                            "line": 295,
                                            "column": 51
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10776,
                                      "end": 10789,
                                      "loc": {
                                        "start": {
                                          "line": 295,
                                          "column": 52
                                        },
                                        "end": {
                                          "line": 295,
                                          "column": 65
                                        },
                                        "identifierName": "rawAttributes"
                                      },
                                      "name": "rawAttributes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 10790,
                                    "end": 10803,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 66
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 79
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 10790,
                                      "end": 10794,
                                      "loc": {
                                        "start": {
                                          "line": 295,
                                          "column": 66
                                        },
                                        "end": {
                                          "line": 295,
                                          "column": 70
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 10795,
                                      "end": 10803,
                                      "loc": {
                                        "start": {
                                          "line": 295,
                                          "column": 71
                                        },
                                        "end": {
                                          "line": 295,
                                          "column": 79
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10805,
                                  "end": 10813,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 81
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 89
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 10817,
                                "end": 10838,
                                "loc": {
                                  "start": {
                                    "line": 295,
                                    "column": 93
                                  },
                                  "end": {
                                    "line": 295,
                                    "column": 114
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 10817,
                                  "end": 10829,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 93
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 105
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 10817,
                                    "end": 10821,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 93
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 97
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 10822,
                                    "end": 10829,
                                    "loc": {
                                      "start": {
                                        "line": 295,
                                        "column": 98
                                      },
                                      "end": {
                                        "line": 295,
                                        "column": 105
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10830,
                                  "end": 10838,
                                  "loc": {
                                    "start": {
                                      "line": 295,
                                      "column": 106
                                    },
                                    "end": {
                                      "line": 295,
                                      "column": 114
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              }
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 10847,
                          "end": 10915,
                          "loc": {
                            "start": {
                              "line": 297,
                              "column": 6
                            },
                            "end": {
                              "line": 297,
                              "column": 74
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 10851,
                            "end": 10876,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 10
                              },
                              "end": {
                                "line": 297,
                                "column": 35
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 10852,
                              "end": 10876,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 11
                                },
                                "end": {
                                  "line": 297,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10852,
                                "end": 10867,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 26
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10868,
                                "end": 10876,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 35
                                  },
                                  "identifierName": "onDelete"
                                },
                                "name": "onDelete"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 10878,
                            "end": 10915,
                            "loc": {
                              "start": {
                                "line": 297,
                                "column": 37
                              },
                              "end": {
                                "line": 297,
                                "column": 74
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10878,
                              "end": 10914,
                              "loc": {
                                "start": {
                                  "line": 297,
                                  "column": 37
                                },
                                "end": {
                                  "line": 297,
                                  "column": 73
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10878,
                                "end": 10902,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 10878,
                                  "end": 10893,
                                  "loc": {
                                    "start": {
                                      "line": 297,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 52
                                    },
                                    "identifierName": "targetAttribute"
                                  },
                                  "name": "targetAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10894,
                                  "end": 10902,
                                  "loc": {
                                    "start": {
                                      "line": 297,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 297,
                                      "column": 61
                                    },
                                    "identifierName": "onDelete"
                                  },
                                  "name": "onDelete"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "StringLiteral",
                                "start": 10905,
                                "end": 10914,
                                "loc": {
                                  "start": {
                                    "line": 297,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 297,
                                    "column": 73
                                  }
                                },
                                "extra": {
                                  "rawValue": "CASCADE",
                                  "raw": "'CASCADE'"
                                },
                                "value": "CASCADE"
                              }
                            }
                          },
                          "alternate": null
                        },
                        {
                          "type": "IfStatement",
                          "start": 10922,
                          "end": 10990,
                          "loc": {
                            "start": {
                              "line": 298,
                              "column": 6
                            },
                            "end": {
                              "line": 298,
                              "column": 74
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 10926,
                            "end": 10951,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 10
                              },
                              "end": {
                                "line": 298,
                                "column": 35
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 10927,
                              "end": 10951,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 11
                                },
                                "end": {
                                  "line": 298,
                                  "column": 35
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 10927,
                                "end": 10942,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 26
                                  },
                                  "identifierName": "targetAttribute"
                                },
                                "name": "targetAttribute"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 10943,
                                "end": 10951,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 35
                                  },
                                  "identifierName": "onUpdate"
                                },
                                "name": "onUpdate"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "ExpressionStatement",
                            "start": 10953,
                            "end": 10990,
                            "loc": {
                              "start": {
                                "line": 298,
                                "column": 37
                              },
                              "end": {
                                "line": 298,
                                "column": 74
                              }
                            },
                            "expression": {
                              "type": "AssignmentExpression",
                              "start": 10953,
                              "end": 10989,
                              "loc": {
                                "start": {
                                  "line": 298,
                                  "column": 37
                                },
                                "end": {
                                  "line": 298,
                                  "column": 73
                                }
                              },
                              "operator": "=",
                              "left": {
                                "type": "MemberExpression",
                                "start": 10953,
                                "end": 10977,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 61
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 10953,
                                  "end": 10968,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 52
                                    },
                                    "identifierName": "targetAttribute"
                                  },
                                  "name": "targetAttribute"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 10969,
                                  "end": 10977,
                                  "loc": {
                                    "start": {
                                      "line": 298,
                                      "column": 53
                                    },
                                    "end": {
                                      "line": 298,
                                      "column": 61
                                    },
                                    "identifierName": "onUpdate"
                                  },
                                  "name": "onUpdate"
                                },
                                "computed": false
                              },
                              "right": {
                                "type": "StringLiteral",
                                "start": 10980,
                                "end": 10989,
                                "loc": {
                                  "start": {
                                    "line": 298,
                                    "column": 64
                                  },
                                  "end": {
                                    "line": 298,
                                    "column": 73
                                  }
                                },
                                "extra": {
                                  "rawValue": "CASCADE",
                                  "raw": "'CASCADE'"
                                },
                                "value": "CASCADE"
                              }
                            }
                          },
                          "alternate": null
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11002,
                    "end": 11131,
                    "loc": {
                      "start": {
                        "line": 301,
                        "column": 4
                      },
                      "end": {
                        "line": 301,
                        "column": 133
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11002,
                      "end": 11130,
                      "loc": {
                        "start": {
                          "line": 301,
                          "column": 4
                        },
                        "end": {
                          "line": 301,
                          "column": 132
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11002,
                        "end": 11051,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 4
                          },
                          "end": {
                            "line": 301,
                            "column": 53
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11002,
                          "end": 11034,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 4
                            },
                            "end": {
                              "line": 301,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11002,
                            "end": 11020,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 4
                              },
                              "end": {
                                "line": 301,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11002,
                              "end": 11014,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 4
                                },
                                "end": {
                                  "line": 301,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11002,
                                "end": 11006,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 4
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 8
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11007,
                                "end": 11014,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 16
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11015,
                              "end": 11020,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 17
                                },
                                "end": {
                                  "line": 301,
                                  "column": 22
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11021,
                            "end": 11034,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 23
                              },
                              "end": {
                                "line": 301,
                                "column": 36
                              },
                              "identifierName": "rawAttributes"
                            },
                            "name": "rawAttributes"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 11035,
                          "end": 11050,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 37
                            },
                            "end": {
                              "line": 301,
                              "column": 52
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11035,
                            "end": 11039,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 37
                              },
                              "end": {
                                "line": 301,
                                "column": 41
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11040,
                            "end": 11050,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 42
                              },
                              "end": {
                                "line": 301,
                                "column": 52
                              },
                              "identifierName": "foreignKey"
                            },
                            "name": "foreignKey"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 11054,
                        "end": 11130,
                        "loc": {
                          "start": {
                            "line": 301,
                            "column": 56
                          },
                          "end": {
                            "line": 301,
                            "column": 132
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11054,
                          "end": 11062,
                          "loc": {
                            "start": {
                              "line": 301,
                              "column": 56
                            },
                            "end": {
                              "line": 301,
                              "column": 64
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11054,
                            "end": 11055,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 56
                              },
                              "end": {
                                "line": 301,
                                "column": 57
                              },
                              "identifierName": "_"
                            },
                            "name": "_"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11056,
                            "end": 11062,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 58
                              },
                              "end": {
                                "line": 301,
                                "column": 64
                              },
                              "identifierName": "extend"
                            },
                            "name": "extend"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11063,
                            "end": 11112,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 65
                              },
                              "end": {
                                "line": 301,
                                "column": 114
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11063,
                              "end": 11095,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 65
                                },
                                "end": {
                                  "line": 301,
                                  "column": 97
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11063,
                                "end": 11081,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 83
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11063,
                                  "end": 11075,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 77
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11063,
                                    "end": 11067,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 69
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11068,
                                    "end": 11075,
                                    "loc": {
                                      "start": {
                                        "line": 301,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 301,
                                        "column": 77
                                      },
                                      "identifierName": "through"
                                    },
                                    "name": "through"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11076,
                                  "end": 11081,
                                  "loc": {
                                    "start": {
                                      "line": 301,
                                      "column": 78
                                    },
                                    "end": {
                                      "line": 301,
                                      "column": 83
                                    },
                                    "identifierName": "model"
                                  },
                                  "name": "model"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11082,
                                "end": 11095,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 97
                                  },
                                  "identifierName": "rawAttributes"
                                },
                                "name": "rawAttributes"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 11096,
                              "end": 11111,
                              "loc": {
                                "start": {
                                  "line": 301,
                                  "column": 98
                                },
                                "end": {
                                  "line": 301,
                                  "column": 113
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11096,
                                "end": 11100,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 98
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 102
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11101,
                                "end": 11111,
                                "loc": {
                                  "start": {
                                    "line": 301,
                                    "column": 103
                                  },
                                  "end": {
                                    "line": 301,
                                    "column": 113
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          {
                            "type": "Identifier",
                            "start": 11114,
                            "end": 11129,
                            "loc": {
                              "start": {
                                "line": 301,
                                "column": 116
                              },
                              "end": {
                                "line": 301,
                                "column": 131
                              },
                              "identifierName": "sourceAttribute"
                            },
                            "name": "sourceAttribute"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11136,
                    "end": 11261,
                    "loc": {
                      "start": {
                        "line": 302,
                        "column": 4
                      },
                      "end": {
                        "line": 302,
                        "column": 129
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11136,
                      "end": 11260,
                      "loc": {
                        "start": {
                          "line": 302,
                          "column": 4
                        },
                        "end": {
                          "line": 302,
                          "column": 128
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11136,
                        "end": 11183,
                        "loc": {
                          "start": {
                            "line": 302,
                            "column": 4
                          },
                          "end": {
                            "line": 302,
                            "column": 51
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11136,
                          "end": 11168,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 4
                            },
                            "end": {
                              "line": 302,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11136,
                            "end": 11154,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 4
                              },
                              "end": {
                                "line": 302,
                                "column": 22
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11136,
                              "end": 11148,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 4
                                },
                                "end": {
                                  "line": 302,
                                  "column": 16
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11136,
                                "end": 11140,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 4
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 8
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11141,
                                "end": 11148,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 9
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 16
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11149,
                              "end": 11154,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 17
                                },
                                "end": {
                                  "line": 302,
                                  "column": 22
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11155,
                            "end": 11168,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 23
                              },
                              "end": {
                                "line": 302,
                                "column": 36
                              },
                              "identifierName": "rawAttributes"
                            },
                            "name": "rawAttributes"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 11169,
                          "end": 11182,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 37
                            },
                            "end": {
                              "line": 302,
                              "column": 50
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11169,
                            "end": 11173,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 37
                              },
                              "end": {
                                "line": 302,
                                "column": 41
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11174,
                            "end": 11182,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 42
                              },
                              "end": {
                                "line": 302,
                                "column": 50
                              },
                              "identifierName": "otherKey"
                            },
                            "name": "otherKey"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 11186,
                        "end": 11260,
                        "loc": {
                          "start": {
                            "line": 302,
                            "column": 54
                          },
                          "end": {
                            "line": 302,
                            "column": 128
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 11186,
                          "end": 11194,
                          "loc": {
                            "start": {
                              "line": 302,
                              "column": 54
                            },
                            "end": {
                              "line": 302,
                              "column": 62
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 11186,
                            "end": 11187,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 54
                              },
                              "end": {
                                "line": 302,
                                "column": 55
                              },
                              "identifierName": "_"
                            },
                            "name": "_"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11188,
                            "end": 11194,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 56
                              },
                              "end": {
                                "line": 302,
                                "column": 62
                              },
                              "identifierName": "extend"
                            },
                            "name": "extend"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11195,
                            "end": 11242,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 63
                              },
                              "end": {
                                "line": 302,
                                "column": 110
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11195,
                              "end": 11227,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 63
                                },
                                "end": {
                                  "line": 302,
                                  "column": 95
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11195,
                                "end": 11213,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 81
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11195,
                                  "end": 11207,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 75
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11195,
                                    "end": 11199,
                                    "loc": {
                                      "start": {
                                        "line": 302,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 302,
                                        "column": 67
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11200,
                                    "end": 11207,
                                    "loc": {
                                      "start": {
                                        "line": 302,
                                        "column": 68
                                      },
                                      "end": {
                                        "line": 302,
                                        "column": 75
                                      },
                                      "identifierName": "through"
                                    },
                                    "name": "through"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11208,
                                  "end": 11213,
                                  "loc": {
                                    "start": {
                                      "line": 302,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 302,
                                      "column": 81
                                    },
                                    "identifierName": "model"
                                  },
                                  "name": "model"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11214,
                                "end": 11227,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 82
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 95
                                  },
                                  "identifierName": "rawAttributes"
                                },
                                "name": "rawAttributes"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 11228,
                              "end": 11241,
                              "loc": {
                                "start": {
                                  "line": 302,
                                  "column": 96
                                },
                                "end": {
                                  "line": 302,
                                  "column": 109
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11228,
                                "end": 11232,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 96
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 100
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11233,
                                "end": 11241,
                                "loc": {
                                  "start": {
                                    "line": 302,
                                    "column": 101
                                  },
                                  "end": {
                                    "line": 302,
                                    "column": 109
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          {
                            "type": "Identifier",
                            "start": 11244,
                            "end": 11259,
                            "loc": {
                              "start": {
                                "line": 302,
                                "column": 112
                              },
                              "end": {
                                "line": 302,
                                "column": 127
                              },
                              "identifierName": "targetAttribute"
                            },
                            "name": "targetAttribute"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11267,
                    "end": 11365,
                    "loc": {
                      "start": {
                        "line": 304,
                        "column": 4
                      },
                      "end": {
                        "line": 304,
                        "column": 102
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11267,
                      "end": 11364,
                      "loc": {
                        "start": {
                          "line": 304,
                          "column": 4
                        },
                        "end": {
                          "line": 304,
                          "column": 101
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11267,
                        "end": 11287,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 4
                          },
                          "end": {
                            "line": 304,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11267,
                          "end": 11271,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 4
                            },
                            "end": {
                              "line": 304,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11272,
                          "end": 11287,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 9
                            },
                            "end": {
                              "line": 304,
                              "column": 24
                            },
                            "identifierName": "identifierField"
                          },
                          "name": "identifierField"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 11290,
                        "end": 11364,
                        "loc": {
                          "start": {
                            "line": 304,
                            "column": 27
                          },
                          "end": {
                            "line": 304,
                            "column": 101
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 11290,
                          "end": 11345,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 27
                            },
                            "end": {
                              "line": 304,
                              "column": 82
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11290,
                            "end": 11339,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 27
                              },
                              "end": {
                                "line": 304,
                                "column": 76
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11290,
                              "end": 11322,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 27
                                },
                                "end": {
                                  "line": 304,
                                  "column": 59
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11290,
                                "end": 11308,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 45
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11290,
                                  "end": 11302,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 39
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11290,
                                    "end": 11294,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 31
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11295,
                                    "end": 11302,
                                    "loc": {
                                      "start": {
                                        "line": 304,
                                        "column": 32
                                      },
                                      "end": {
                                        "line": 304,
                                        "column": 39
                                      },
                                      "identifierName": "through"
                                    },
                                    "name": "through"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11303,
                                  "end": 11308,
                                  "loc": {
                                    "start": {
                                      "line": 304,
                                      "column": 40
                                    },
                                    "end": {
                                      "line": 304,
                                      "column": 45
                                    },
                                    "identifierName": "model"
                                  },
                                  "name": "model"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11309,
                                "end": 11322,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 46
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 59
                                  },
                                  "identifierName": "rawAttributes"
                                },
                                "name": "rawAttributes"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 11323,
                              "end": 11338,
                              "loc": {
                                "start": {
                                  "line": 304,
                                  "column": 60
                                },
                                "end": {
                                  "line": 304,
                                  "column": 75
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11323,
                                "end": 11327,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 60
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 64
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11328,
                                "end": 11338,
                                "loc": {
                                  "start": {
                                    "line": 304,
                                    "column": 65
                                  },
                                  "end": {
                                    "line": 304,
                                    "column": 75
                                  },
                                  "identifierName": "foreignKey"
                                },
                                "name": "foreignKey"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11340,
                            "end": 11345,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 77
                              },
                              "end": {
                                "line": 304,
                                "column": 82
                              },
                              "identifierName": "field"
                            },
                            "name": "field"
                          },
                          "computed": false
                        },
                        "operator": "||",
                        "right": {
                          "type": "MemberExpression",
                          "start": 11349,
                          "end": 11364,
                          "loc": {
                            "start": {
                              "line": 304,
                              "column": 86
                            },
                            "end": {
                              "line": 304,
                              "column": 101
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11349,
                            "end": 11353,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 86
                              },
                              "end": {
                                "line": 304,
                                "column": 90
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11354,
                            "end": 11364,
                            "loc": {
                              "start": {
                                "line": 304,
                                "column": 91
                              },
                              "end": {
                                "line": 304,
                                "column": 101
                              },
                              "identifierName": "foreignKey"
                            },
                            "name": "foreignKey"
                          },
                          "computed": false
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11370,
                    "end": 11471,
                    "loc": {
                      "start": {
                        "line": 305,
                        "column": 4
                      },
                      "end": {
                        "line": 305,
                        "column": 105
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11370,
                      "end": 11470,
                      "loc": {
                        "start": {
                          "line": 305,
                          "column": 4
                        },
                        "end": {
                          "line": 305,
                          "column": 104
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11370,
                        "end": 11397,
                        "loc": {
                          "start": {
                            "line": 305,
                            "column": 4
                          },
                          "end": {
                            "line": 305,
                            "column": 31
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11370,
                          "end": 11374,
                          "loc": {
                            "start": {
                              "line": 305,
                              "column": 4
                            },
                            "end": {
                              "line": 305,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11375,
                          "end": 11397,
                          "loc": {
                            "start": {
                              "line": 305,
                              "column": 9
                            },
                            "end": {
                              "line": 305,
                              "column": 31
                            },
                            "identifierName": "foreignIdentifierField"
                          },
                          "name": "foreignIdentifierField"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 11400,
                        "end": 11470,
                        "loc": {
                          "start": {
                            "line": 305,
                            "column": 34
                          },
                          "end": {
                            "line": 305,
                            "column": 104
                          }
                        },
                        "left": {
                          "type": "MemberExpression",
                          "start": 11400,
                          "end": 11453,
                          "loc": {
                            "start": {
                              "line": 305,
                              "column": 34
                            },
                            "end": {
                              "line": 305,
                              "column": 87
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11400,
                            "end": 11447,
                            "loc": {
                              "start": {
                                "line": 305,
                                "column": 34
                              },
                              "end": {
                                "line": 305,
                                "column": 81
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11400,
                              "end": 11432,
                              "loc": {
                                "start": {
                                  "line": 305,
                                  "column": 34
                                },
                                "end": {
                                  "line": 305,
                                  "column": 66
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11400,
                                "end": 11418,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11400,
                                  "end": 11412,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 34
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 46
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11400,
                                    "end": 11404,
                                    "loc": {
                                      "start": {
                                        "line": 305,
                                        "column": 34
                                      },
                                      "end": {
                                        "line": 305,
                                        "column": 38
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11405,
                                    "end": 11412,
                                    "loc": {
                                      "start": {
                                        "line": 305,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 305,
                                        "column": 46
                                      },
                                      "identifierName": "through"
                                    },
                                    "name": "through"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11413,
                                  "end": 11418,
                                  "loc": {
                                    "start": {
                                      "line": 305,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 305,
                                      "column": 52
                                    },
                                    "identifierName": "model"
                                  },
                                  "name": "model"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11419,
                                "end": 11432,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 53
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 66
                                  },
                                  "identifierName": "rawAttributes"
                                },
                                "name": "rawAttributes"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "MemberExpression",
                              "start": 11433,
                              "end": 11446,
                              "loc": {
                                "start": {
                                  "line": 305,
                                  "column": 67
                                },
                                "end": {
                                  "line": 305,
                                  "column": 80
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11433,
                                "end": 11437,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 71
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11438,
                                "end": 11446,
                                "loc": {
                                  "start": {
                                    "line": 305,
                                    "column": 72
                                  },
                                  "end": {
                                    "line": 305,
                                    "column": 80
                                  },
                                  "identifierName": "otherKey"
                                },
                                "name": "otherKey"
                              },
                              "computed": false
                            },
                            "computed": true
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11448,
                            "end": 11453,
                            "loc": {
                              "start": {
                                "line": 305,
                                "column": 82
                              },
                              "end": {
                                "line": 305,
                                "column": 87
                              },
                              "identifierName": "field"
                            },
                            "name": "field"
                          },
                          "computed": false
                        },
                        "operator": "||",
                        "right": {
                          "type": "MemberExpression",
                          "start": 11457,
                          "end": 11470,
                          "loc": {
                            "start": {
                              "line": 305,
                              "column": 91
                            },
                            "end": {
                              "line": 305,
                              "column": 104
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 11457,
                            "end": 11461,
                            "loc": {
                              "start": {
                                "line": 305,
                                "column": 91
                              },
                              "end": {
                                "line": 305,
                                "column": 95
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11462,
                            "end": 11470,
                            "loc": {
                              "start": {
                                "line": 305,
                                "column": 96
                              },
                              "end": {
                                "line": 305,
                                "column": 104
                              },
                              "identifierName": "otherKey"
                            },
                            "name": "otherKey"
                          },
                          "computed": false
                        }
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 11477,
                    "end": 11669,
                    "loc": {
                      "start": {
                        "line": 307,
                        "column": 4
                      },
                      "end": {
                        "line": 309,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 11481,
                      "end": 11531,
                      "loc": {
                        "start": {
                          "line": 307,
                          "column": 8
                        },
                        "end": {
                          "line": 307,
                          "column": 58
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 11481,
                        "end": 11492,
                        "loc": {
                          "start": {
                            "line": 307,
                            "column": 8
                          },
                          "end": {
                            "line": 307,
                            "column": 19
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11481,
                          "end": 11485,
                          "loc": {
                            "start": {
                              "line": 307,
                              "column": 8
                            },
                            "end": {
                              "line": 307,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11486,
                          "end": 11492,
                          "loc": {
                            "start": {
                              "line": 307,
                              "column": 13
                            },
                            "end": {
                              "line": 307,
                              "column": 19
                            },
                            "identifierName": "paired"
                          },
                          "name": "paired"
                        },
                        "computed": false
                      },
                      "operator": "&&",
                      "right": {
                        "type": "UnaryExpression",
                        "start": 11496,
                        "end": 11531,
                        "loc": {
                          "start": {
                            "line": 307,
                            "column": 23
                          },
                          "end": {
                            "line": 307,
                            "column": 58
                          }
                        },
                        "operator": "!",
                        "prefix": true,
                        "argument": {
                          "type": "MemberExpression",
                          "start": 11497,
                          "end": 11531,
                          "loc": {
                            "start": {
                              "line": 307,
                              "column": 24
                            },
                            "end": {
                              "line": 307,
                              "column": 58
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11497,
                            "end": 11508,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 24
                              },
                              "end": {
                                "line": 307,
                                "column": 35
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11497,
                              "end": 11501,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 24
                                },
                                "end": {
                                  "line": 307,
                                  "column": 28
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11502,
                              "end": 11508,
                              "loc": {
                                "start": {
                                  "line": 307,
                                  "column": 29
                                },
                                "end": {
                                  "line": 307,
                                  "column": 35
                                },
                                "identifierName": "paired"
                              },
                              "name": "paired"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11509,
                            "end": 11531,
                            "loc": {
                              "start": {
                                "line": 307,
                                "column": 36
                              },
                              "end": {
                                "line": 307,
                                "column": 58
                              },
                              "identifierName": "foreignIdentifierField"
                            },
                            "name": "foreignIdentifierField"
                          },
                          "computed": false
                        },
                        "extra": {
                          "parenthesizedArgument": false
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 11533,
                      "end": 11669,
                      "loc": {
                        "start": {
                          "line": 307,
                          "column": 60
                        },
                        "end": {
                          "line": 309,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 11541,
                          "end": 11663,
                          "loc": {
                            "start": {
                              "line": 308,
                              "column": 6
                            },
                            "end": {
                              "line": 308,
                              "column": 128
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 11541,
                            "end": 11662,
                            "loc": {
                              "start": {
                                "line": 308,
                                "column": 6
                              },
                              "end": {
                                "line": 308,
                                "column": 127
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 11541,
                              "end": 11575,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 6
                                },
                                "end": {
                                  "line": 308,
                                  "column": 40
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 11541,
                                "end": 11552,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 11541,
                                  "end": 11545,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11546,
                                  "end": 11552,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 17
                                    },
                                    "identifierName": "paired"
                                  },
                                  "name": "paired"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11553,
                                "end": 11575,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 40
                                  },
                                  "identifierName": "foreignIdentifierField"
                                },
                                "name": "foreignIdentifierField"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 11578,
                              "end": 11662,
                              "loc": {
                                "start": {
                                  "line": 308,
                                  "column": 43
                                },
                                "end": {
                                  "line": 308,
                                  "column": 127
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 11578,
                                "end": 11638,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 103
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11578,
                                  "end": 11632,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 97
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 11578,
                                    "end": 11610,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 75
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 11578,
                                      "end": 11596,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 61
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 11578,
                                        "end": 11590,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 55
                                          }
                                        },
                                        "object": {
                                          "type": "ThisExpression",
                                          "start": 11578,
                                          "end": 11582,
                                          "loc": {
                                            "start": {
                                              "line": 308,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 308,
                                              "column": 47
                                            }
                                          }
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 11583,
                                          "end": 11590,
                                          "loc": {
                                            "start": {
                                              "line": 308,
                                              "column": 48
                                            },
                                            "end": {
                                              "line": 308,
                                              "column": 55
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11591,
                                        "end": 11596,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 56
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 61
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11597,
                                      "end": 11610,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 62
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 75
                                        },
                                        "identifierName": "rawAttributes"
                                      },
                                      "name": "rawAttributes"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 11611,
                                    "end": 11631,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 76
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 96
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 11611,
                                      "end": 11622,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 76
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 87
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 11611,
                                        "end": 11615,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 80
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 11616,
                                        "end": 11622,
                                        "loc": {
                                          "start": {
                                            "line": 308,
                                            "column": 81
                                          },
                                          "end": {
                                            "line": 308,
                                            "column": 87
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 11623,
                                      "end": 11631,
                                      "loc": {
                                        "start": {
                                          "line": 308,
                                          "column": 88
                                        },
                                        "end": {
                                          "line": 308,
                                          "column": 96
                                        },
                                        "identifierName": "otherKey"
                                      },
                                      "name": "otherKey"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11633,
                                  "end": 11638,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 98
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 103
                                    },
                                    "identifierName": "field"
                                  },
                                  "name": "field"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "MemberExpression",
                                "start": 11642,
                                "end": 11662,
                                "loc": {
                                  "start": {
                                    "line": 308,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 308,
                                    "column": 127
                                  }
                                },
                                "object": {
                                  "type": "MemberExpression",
                                  "start": 11642,
                                  "end": 11653,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 107
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 118
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11642,
                                    "end": 11646,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 107
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 111
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11647,
                                    "end": 11653,
                                    "loc": {
                                      "start": {
                                        "line": 308,
                                        "column": 112
                                      },
                                      "end": {
                                        "line": 308,
                                        "column": 118
                                      },
                                      "identifierName": "paired"
                                    },
                                    "name": "paired"
                                  },
                                  "computed": false
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 11654,
                                  "end": 11662,
                                  "loc": {
                                    "start": {
                                      "line": 308,
                                      "column": 119
                                    },
                                    "end": {
                                      "line": 308,
                                      "column": 127
                                    },
                                    "identifierName": "otherKey"
                                  },
                                  "name": "otherKey"
                                },
                                "computed": false
                              }
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11675,
                    "end": 11714,
                    "loc": {
                      "start": {
                        "line": 311,
                        "column": 4
                      },
                      "end": {
                        "line": 311,
                        "column": 43
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 11675,
                      "end": 11713,
                      "loc": {
                        "start": {
                          "line": 311,
                          "column": 4
                        },
                        "end": {
                          "line": 311,
                          "column": 42
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 11675,
                        "end": 11711,
                        "loc": {
                          "start": {
                            "line": 311,
                            "column": 4
                          },
                          "end": {
                            "line": 311,
                            "column": 40
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 11675,
                          "end": 11693,
                          "loc": {
                            "start": {
                              "line": 311,
                              "column": 4
                            },
                            "end": {
                              "line": 311,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 11675,
                            "end": 11687,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 4
                              },
                              "end": {
                                "line": 311,
                                "column": 16
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11675,
                              "end": 11679,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 4
                                },
                                "end": {
                                  "line": 311,
                                  "column": 8
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11680,
                              "end": 11687,
                              "loc": {
                                "start": {
                                  "line": 311,
                                  "column": 9
                                },
                                "end": {
                                  "line": 311,
                                  "column": 16
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 11688,
                            "end": 11693,
                            "loc": {
                              "start": {
                                "line": 311,
                                "column": 17
                              },
                              "end": {
                                "line": 311,
                                "column": 22
                              },
                              "identifierName": "model"
                            },
                            "name": "model"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11694,
                          "end": 11711,
                          "loc": {
                            "start": {
                              "line": 311,
                              "column": 23
                            },
                            "end": {
                              "line": 311,
                              "column": 40
                            },
                            "identifierName": "refreshAttributes"
                          },
                          "name": "refreshAttributes"
                        },
                        "computed": false
                      },
                      "arguments": []
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11720,
                    "end": 11826,
                    "loc": {
                      "start": {
                        "line": 313,
                        "column": 4
                      },
                      "end": {
                        "line": 315,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11720,
                      "end": 11825,
                      "loc": {
                        "start": {
                          "line": 313,
                          "column": 4
                        },
                        "end": {
                          "line": 315,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11720,
                        "end": 11733,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 4
                          },
                          "end": {
                            "line": 313,
                            "column": 17
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11720,
                          "end": 11724,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 4
                            },
                            "end": {
                              "line": 313,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11725,
                          "end": 11733,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 9
                            },
                            "end": {
                              "line": 313,
                              "column": 17
                            },
                            "identifierName": "toSource"
                          },
                          "name": "toSource"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 11736,
                        "end": 11825,
                        "loc": {
                          "start": {
                            "line": 313,
                            "column": 20
                          },
                          "end": {
                            "line": 315,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11740,
                          "end": 11749,
                          "loc": {
                            "start": {
                              "line": 313,
                              "column": 24
                            },
                            "end": {
                              "line": 313,
                              "column": 33
                            },
                            "identifierName": "BelongsTo"
                          },
                          "name": "BelongsTo"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11750,
                            "end": 11768,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 34
                              },
                              "end": {
                                "line": 313,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11750,
                              "end": 11762,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 34
                                },
                                "end": {
                                  "line": 313,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11750,
                                "end": 11754,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 313,
                                    "column": 38
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11755,
                                "end": 11762,
                                "loc": {
                                  "start": {
                                    "line": 313,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 313,
                                    "column": 46
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11763,
                              "end": 11768,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 47
                                },
                                "end": {
                                  "line": 313,
                                  "column": 52
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 11770,
                            "end": 11781,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 54
                              },
                              "end": {
                                "line": 313,
                                "column": 65
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11770,
                              "end": 11774,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 54
                                },
                                "end": {
                                  "line": 313,
                                  "column": 58
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11775,
                              "end": 11781,
                              "loc": {
                                "start": {
                                  "line": 313,
                                  "column": 59
                                },
                                "end": {
                                  "line": 313,
                                  "column": 65
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 11783,
                            "end": 11824,
                            "loc": {
                              "start": {
                                "line": 313,
                                "column": 67
                              },
                              "end": {
                                "line": 315,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 11791,
                                "end": 11818,
                                "loc": {
                                  "start": {
                                    "line": 314,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 314,
                                    "column": 33
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11791,
                                  "end": 11801,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 11803,
                                  "end": 11818,
                                  "loc": {
                                    "start": {
                                      "line": 314,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 314,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11803,
                                    "end": 11807,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11808,
                                    "end": 11818,
                                    "loc": {
                                      "start": {
                                        "line": 314,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 314,
                                        "column": 33
                                      },
                                      "identifierName": "foreignKey"
                                    },
                                    "name": "foreignKey"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11831,
                    "end": 11941,
                    "loc": {
                      "start": {
                        "line": 316,
                        "column": 4
                      },
                      "end": {
                        "line": 318,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11831,
                      "end": 11940,
                      "loc": {
                        "start": {
                          "line": 316,
                          "column": 4
                        },
                        "end": {
                          "line": 318,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11831,
                        "end": 11850,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 4
                          },
                          "end": {
                            "line": 316,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11831,
                          "end": 11835,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 4
                            },
                            "end": {
                              "line": 316,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11836,
                          "end": 11850,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 9
                            },
                            "end": {
                              "line": 316,
                              "column": 23
                            },
                            "identifierName": "manyFromSource"
                          },
                          "name": "manyFromSource"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 11853,
                        "end": 11940,
                        "loc": {
                          "start": {
                            "line": 316,
                            "column": 26
                          },
                          "end": {
                            "line": 318,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11857,
                          "end": 11864,
                          "loc": {
                            "start": {
                              "line": 316,
                              "column": 30
                            },
                            "end": {
                              "line": 316,
                              "column": 37
                            },
                            "identifierName": "HasMany"
                          },
                          "name": "HasMany"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11865,
                            "end": 11876,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 38
                              },
                              "end": {
                                "line": 316,
                                "column": 49
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11865,
                              "end": 11869,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 38
                                },
                                "end": {
                                  "line": 316,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11870,
                              "end": 11876,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 43
                                },
                                "end": {
                                  "line": 316,
                                  "column": 49
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 11878,
                            "end": 11896,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 51
                              },
                              "end": {
                                "line": 316,
                                "column": 69
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11878,
                              "end": 11890,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 51
                                },
                                "end": {
                                  "line": 316,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11878,
                                "end": 11882,
                                "loc": {
                                  "start": {
                                    "line": 316,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 316,
                                    "column": 55
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11883,
                                "end": 11890,
                                "loc": {
                                  "start": {
                                    "line": 316,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 316,
                                    "column": 63
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11891,
                              "end": 11896,
                              "loc": {
                                "start": {
                                  "line": 316,
                                  "column": 64
                                },
                                "end": {
                                  "line": 316,
                                  "column": 69
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 11898,
                            "end": 11939,
                            "loc": {
                              "start": {
                                "line": 316,
                                "column": 71
                              },
                              "end": {
                                "line": 318,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 11906,
                                "end": 11933,
                                "loc": {
                                  "start": {
                                    "line": 317,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 317,
                                    "column": 33
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 11906,
                                  "end": 11916,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 11918,
                                  "end": 11933,
                                  "loc": {
                                    "start": {
                                      "line": 317,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 317,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 11918,
                                    "end": 11922,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 11923,
                                    "end": 11933,
                                    "loc": {
                                      "start": {
                                        "line": 317,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 317,
                                        "column": 33
                                      },
                                      "identifierName": "foreignKey"
                                    },
                                    "name": "foreignKey"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 11946,
                    "end": 12089,
                    "loc": {
                      "start": {
                        "line": 319,
                        "column": 4
                      },
                      "end": {
                        "line": 322,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 11946,
                      "end": 12088,
                      "loc": {
                        "start": {
                          "line": 319,
                          "column": 4
                        },
                        "end": {
                          "line": 322,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 11946,
                        "end": 11964,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 4
                          },
                          "end": {
                            "line": 319,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 11946,
                          "end": 11950,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 4
                            },
                            "end": {
                              "line": 319,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 11951,
                          "end": 11964,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 9
                            },
                            "end": {
                              "line": 319,
                              "column": 22
                            },
                            "identifierName": "oneFromSource"
                          },
                          "name": "oneFromSource"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 11967,
                        "end": 12088,
                        "loc": {
                          "start": {
                            "line": 319,
                            "column": 25
                          },
                          "end": {
                            "line": 322,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 11971,
                          "end": 11977,
                          "loc": {
                            "start": {
                              "line": 319,
                              "column": 29
                            },
                            "end": {
                              "line": 319,
                              "column": 35
                            },
                            "identifierName": "HasOne"
                          },
                          "name": "HasOne"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 11978,
                            "end": 11989,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 36
                              },
                              "end": {
                                "line": 319,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 11978,
                              "end": 11982,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 36
                                },
                                "end": {
                                  "line": 319,
                                  "column": 40
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 11983,
                              "end": 11989,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 41
                                },
                                "end": {
                                  "line": 319,
                                  "column": 47
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 11991,
                            "end": 12009,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 49
                              },
                              "end": {
                                "line": 319,
                                "column": 67
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 11991,
                              "end": 12003,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 49
                                },
                                "end": {
                                  "line": 319,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 11991,
                                "end": 11995,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 11996,
                                "end": 12003,
                                "loc": {
                                  "start": {
                                    "line": 319,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 319,
                                    "column": 61
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12004,
                              "end": 12009,
                              "loc": {
                                "start": {
                                  "line": 319,
                                  "column": 62
                                },
                                "end": {
                                  "line": 319,
                                  "column": 67
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 12011,
                            "end": 12087,
                            "loc": {
                              "start": {
                                "line": 319,
                                "column": 69
                              },
                              "end": {
                                "line": 322,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 12019,
                                "end": 12046,
                                "loc": {
                                  "start": {
                                    "line": 320,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 320,
                                    "column": 33
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12019,
                                  "end": 12029,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 320,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12031,
                                  "end": 12046,
                                  "loc": {
                                    "start": {
                                      "line": 320,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 320,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 12031,
                                    "end": 12035,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 320,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12036,
                                    "end": 12046,
                                    "loc": {
                                      "start": {
                                        "line": 320,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 320,
                                        "column": 33
                                      },
                                      "identifierName": "foreignKey"
                                    },
                                    "name": "foreignKey"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "ObjectProperty",
                                "start": 12054,
                                "end": 12081,
                                "loc": {
                                  "start": {
                                    "line": 321,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 321,
                                    "column": 33
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12054,
                                  "end": 12056,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 8
                                    },
                                    "identifierName": "as"
                                  },
                                  "name": "as"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12058,
                                  "end": 12081,
                                  "loc": {
                                    "start": {
                                      "line": 321,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 321,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12058,
                                    "end": 12076,
                                    "loc": {
                                      "start": {
                                        "line": 321,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 321,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12058,
                                      "end": 12070,
                                      "loc": {
                                        "start": {
                                          "line": 321,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 321,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 12058,
                                        "end": 12062,
                                        "loc": {
                                          "start": {
                                            "line": 321,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 321,
                                            "column": 14
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12063,
                                        "end": 12070,
                                        "loc": {
                                          "start": {
                                            "line": 321,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 321,
                                            "column": 22
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12071,
                                      "end": 12076,
                                      "loc": {
                                        "start": {
                                          "line": 321,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 321,
                                          "column": 28
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12077,
                                    "end": 12081,
                                    "loc": {
                                      "start": {
                                        "line": 321,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 321,
                                        "column": 33
                                      },
                                      "identifierName": "name"
                                    },
                                    "name": "name"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 12095,
                    "end": 12199,
                    "loc": {
                      "start": {
                        "line": 324,
                        "column": 4
                      },
                      "end": {
                        "line": 326,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 12095,
                      "end": 12198,
                      "loc": {
                        "start": {
                          "line": 324,
                          "column": 4
                        },
                        "end": {
                          "line": 326,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 12095,
                        "end": 12108,
                        "loc": {
                          "start": {
                            "line": 324,
                            "column": 4
                          },
                          "end": {
                            "line": 324,
                            "column": 17
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12095,
                          "end": 12099,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 4
                            },
                            "end": {
                              "line": 324,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12100,
                          "end": 12108,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 9
                            },
                            "end": {
                              "line": 324,
                              "column": 17
                            },
                            "identifierName": "toTarget"
                          },
                          "name": "toTarget"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 12111,
                        "end": 12198,
                        "loc": {
                          "start": {
                            "line": 324,
                            "column": 20
                          },
                          "end": {
                            "line": 326,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 12115,
                          "end": 12124,
                          "loc": {
                            "start": {
                              "line": 324,
                              "column": 24
                            },
                            "end": {
                              "line": 324,
                              "column": 33
                            },
                            "identifierName": "BelongsTo"
                          },
                          "name": "BelongsTo"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12125,
                            "end": 12143,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 34
                              },
                              "end": {
                                "line": 324,
                                "column": 52
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12125,
                              "end": 12137,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 34
                                },
                                "end": {
                                  "line": 324,
                                  "column": 46
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12125,
                                "end": 12129,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 34
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 38
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12130,
                                "end": 12137,
                                "loc": {
                                  "start": {
                                    "line": 324,
                                    "column": 39
                                  },
                                  "end": {
                                    "line": 324,
                                    "column": 46
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12138,
                              "end": 12143,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 47
                                },
                                "end": {
                                  "line": 324,
                                  "column": 52
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 12145,
                            "end": 12156,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 54
                              },
                              "end": {
                                "line": 324,
                                "column": 65
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12145,
                              "end": 12149,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 54
                                },
                                "end": {
                                  "line": 324,
                                  "column": 58
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12150,
                              "end": 12156,
                              "loc": {
                                "start": {
                                  "line": 324,
                                  "column": 59
                                },
                                "end": {
                                  "line": 324,
                                  "column": 65
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 12158,
                            "end": 12197,
                            "loc": {
                              "start": {
                                "line": 324,
                                "column": 67
                              },
                              "end": {
                                "line": 326,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 12166,
                                "end": 12191,
                                "loc": {
                                  "start": {
                                    "line": 325,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 325,
                                    "column": 31
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12166,
                                  "end": 12176,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12178,
                                  "end": 12191,
                                  "loc": {
                                    "start": {
                                      "line": 325,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 325,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 12178,
                                    "end": 12182,
                                    "loc": {
                                      "start": {
                                        "line": 325,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 325,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12183,
                                    "end": 12191,
                                    "loc": {
                                      "start": {
                                        "line": 325,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 325,
                                        "column": 31
                                      },
                                      "identifierName": "otherKey"
                                    },
                                    "name": "otherKey"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 12204,
                    "end": 12312,
                    "loc": {
                      "start": {
                        "line": 327,
                        "column": 4
                      },
                      "end": {
                        "line": 329,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 12204,
                      "end": 12311,
                      "loc": {
                        "start": {
                          "line": 327,
                          "column": 4
                        },
                        "end": {
                          "line": 329,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 12204,
                        "end": 12223,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 4
                          },
                          "end": {
                            "line": 327,
                            "column": 23
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12204,
                          "end": 12208,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 4
                            },
                            "end": {
                              "line": 327,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12209,
                          "end": 12223,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 9
                            },
                            "end": {
                              "line": 327,
                              "column": 23
                            },
                            "identifierName": "manyFromTarget"
                          },
                          "name": "manyFromTarget"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 12226,
                        "end": 12311,
                        "loc": {
                          "start": {
                            "line": 327,
                            "column": 26
                          },
                          "end": {
                            "line": 329,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 12230,
                          "end": 12237,
                          "loc": {
                            "start": {
                              "line": 327,
                              "column": 30
                            },
                            "end": {
                              "line": 327,
                              "column": 37
                            },
                            "identifierName": "HasMany"
                          },
                          "name": "HasMany"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12238,
                            "end": 12249,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 38
                              },
                              "end": {
                                "line": 327,
                                "column": 49
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12238,
                              "end": 12242,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 38
                                },
                                "end": {
                                  "line": 327,
                                  "column": 42
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12243,
                              "end": 12249,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 43
                                },
                                "end": {
                                  "line": 327,
                                  "column": 49
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 12251,
                            "end": 12269,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 51
                              },
                              "end": {
                                "line": 327,
                                "column": 69
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12251,
                              "end": 12263,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 51
                                },
                                "end": {
                                  "line": 327,
                                  "column": 63
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12251,
                                "end": 12255,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 51
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 55
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12256,
                                "end": 12263,
                                "loc": {
                                  "start": {
                                    "line": 327,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 327,
                                    "column": 63
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12264,
                              "end": 12269,
                              "loc": {
                                "start": {
                                  "line": 327,
                                  "column": 64
                                },
                                "end": {
                                  "line": 327,
                                  "column": 69
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 12271,
                            "end": 12310,
                            "loc": {
                              "start": {
                                "line": 327,
                                "column": 71
                              },
                              "end": {
                                "line": 329,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 12279,
                                "end": 12304,
                                "loc": {
                                  "start": {
                                    "line": 328,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 328,
                                    "column": 31
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12279,
                                  "end": 12289,
                                  "loc": {
                                    "start": {
                                      "line": 328,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 328,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12291,
                                  "end": 12304,
                                  "loc": {
                                    "start": {
                                      "line": 328,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 328,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 12291,
                                    "end": 12295,
                                    "loc": {
                                      "start": {
                                        "line": 328,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 328,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12296,
                                    "end": 12304,
                                    "loc": {
                                      "start": {
                                        "line": 328,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 328,
                                        "column": 31
                                      },
                                      "identifierName": "otherKey"
                                    },
                                    "name": "otherKey"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 12317,
                    "end": 12458,
                    "loc": {
                      "start": {
                        "line": 330,
                        "column": 4
                      },
                      "end": {
                        "line": 333,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 12317,
                      "end": 12457,
                      "loc": {
                        "start": {
                          "line": 330,
                          "column": 4
                        },
                        "end": {
                          "line": 333,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 12317,
                        "end": 12335,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 4
                          },
                          "end": {
                            "line": 330,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12317,
                          "end": 12321,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 4
                            },
                            "end": {
                              "line": 330,
                              "column": 8
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12322,
                          "end": 12335,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 9
                            },
                            "end": {
                              "line": 330,
                              "column": 22
                            },
                            "identifierName": "oneFromTarget"
                          },
                          "name": "oneFromTarget"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "NewExpression",
                        "start": 12338,
                        "end": 12457,
                        "loc": {
                          "start": {
                            "line": 330,
                            "column": 25
                          },
                          "end": {
                            "line": 333,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 12342,
                          "end": 12348,
                          "loc": {
                            "start": {
                              "line": 330,
                              "column": 29
                            },
                            "end": {
                              "line": 330,
                              "column": 35
                            },
                            "identifierName": "HasOne"
                          },
                          "name": "HasOne"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 12349,
                            "end": 12360,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 36
                              },
                              "end": {
                                "line": 330,
                                "column": 47
                              }
                            },
                            "object": {
                              "type": "ThisExpression",
                              "start": 12349,
                              "end": 12353,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 36
                                },
                                "end": {
                                  "line": 330,
                                  "column": 40
                                }
                              }
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12354,
                              "end": 12360,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 41
                                },
                                "end": {
                                  "line": 330,
                                  "column": 47
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          {
                            "type": "MemberExpression",
                            "start": 12362,
                            "end": 12380,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 49
                              },
                              "end": {
                                "line": 330,
                                "column": 67
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 12362,
                              "end": 12374,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 49
                                },
                                "end": {
                                  "line": 330,
                                  "column": 61
                                }
                              },
                              "object": {
                                "type": "ThisExpression",
                                "start": 12362,
                                "end": 12366,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 49
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 53
                                  }
                                }
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12367,
                                "end": 12374,
                                "loc": {
                                  "start": {
                                    "line": 330,
                                    "column": 54
                                  },
                                  "end": {
                                    "line": 330,
                                    "column": 61
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 12375,
                              "end": 12380,
                              "loc": {
                                "start": {
                                  "line": 330,
                                  "column": 62
                                },
                                "end": {
                                  "line": 330,
                                  "column": 67
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 12382,
                            "end": 12456,
                            "loc": {
                              "start": {
                                "line": 330,
                                "column": 69
                              },
                              "end": {
                                "line": 333,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 12390,
                                "end": 12415,
                                "loc": {
                                  "start": {
                                    "line": 331,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 331,
                                    "column": 31
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12390,
                                  "end": 12400,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 16
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12402,
                                  "end": 12415,
                                  "loc": {
                                    "start": {
                                      "line": 331,
                                      "column": 18
                                    },
                                    "end": {
                                      "line": 331,
                                      "column": 31
                                    }
                                  },
                                  "object": {
                                    "type": "ThisExpression",
                                    "start": 12402,
                                    "end": 12406,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 18
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 22
                                      }
                                    }
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12407,
                                    "end": 12415,
                                    "loc": {
                                      "start": {
                                        "line": 331,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 331,
                                        "column": 31
                                      },
                                      "identifierName": "otherKey"
                                    },
                                    "name": "otherKey"
                                  },
                                  "computed": false
                                }
                              },
                              {
                                "type": "ObjectProperty",
                                "start": 12423,
                                "end": 12450,
                                "loc": {
                                  "start": {
                                    "line": 332,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 332,
                                    "column": 33
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 12423,
                                  "end": 12425,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 8
                                    },
                                    "identifierName": "as"
                                  },
                                  "name": "as"
                                },
                                "value": {
                                  "type": "MemberExpression",
                                  "start": 12427,
                                  "end": 12450,
                                  "loc": {
                                    "start": {
                                      "line": 332,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 332,
                                      "column": 33
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12427,
                                    "end": 12445,
                                    "loc": {
                                      "start": {
                                        "line": 332,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 332,
                                        "column": 28
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12427,
                                      "end": 12439,
                                      "loc": {
                                        "start": {
                                          "line": 332,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 332,
                                          "column": 22
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 12427,
                                        "end": 12431,
                                        "loc": {
                                          "start": {
                                            "line": 332,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 332,
                                            "column": 14
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12432,
                                        "end": 12439,
                                        "loc": {
                                          "start": {
                                            "line": 332,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 332,
                                            "column": 22
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12440,
                                      "end": 12445,
                                      "loc": {
                                        "start": {
                                          "line": 332,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 332,
                                          "column": 28
                                        },
                                        "identifierName": "model"
                                      },
                                      "name": "model"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12446,
                                    "end": 12450,
                                    "loc": {
                                      "start": {
                                        "line": 332,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 332,
                                        "column": 33
                                      },
                                      "identifierName": "name"
                                    },
                                    "name": "name"
                                  },
                                  "computed": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 12464,
                    "end": 12852,
                    "loc": {
                      "start": {
                        "line": 335,
                        "column": 4
                      },
                      "end": {
                        "line": 344,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "LogicalExpression",
                      "start": 12468,
                      "end": 12510,
                      "loc": {
                        "start": {
                          "line": 335,
                          "column": 8
                        },
                        "end": {
                          "line": 335,
                          "column": 50
                        }
                      },
                      "left": {
                        "type": "MemberExpression",
                        "start": 12468,
                        "end": 12479,
                        "loc": {
                          "start": {
                            "line": 335,
                            "column": 8
                          },
                          "end": {
                            "line": 335,
                            "column": 19
                          }
                        },
                        "object": {
                          "type": "ThisExpression",
                          "start": 12468,
                          "end": 12472,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 8
                            },
                            "end": {
                              "line": 335,
                              "column": 12
                            }
                          }
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12473,
                          "end": 12479,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 13
                            },
                            "end": {
                              "line": 335,
                              "column": 19
                            },
                            "identifierName": "paired"
                          },
                          "name": "paired"
                        },
                        "computed": false
                      },
                      "operator": "&&",
                      "right": {
                        "type": "MemberExpression",
                        "start": 12483,
                        "end": 12510,
                        "loc": {
                          "start": {
                            "line": 335,
                            "column": 23
                          },
                          "end": {
                            "line": 335,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 12483,
                          "end": 12494,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 23
                            },
                            "end": {
                              "line": 335,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "ThisExpression",
                            "start": 12483,
                            "end": 12487,
                            "loc": {
                              "start": {
                                "line": 335,
                                "column": 23
                              },
                              "end": {
                                "line": 335,
                                "column": 27
                              }
                            }
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 12488,
                            "end": 12494,
                            "loc": {
                              "start": {
                                "line": 335,
                                "column": 28
                              },
                              "end": {
                                "line": 335,
                                "column": 34
                              },
                              "identifierName": "paired"
                            },
                            "name": "paired"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12495,
                          "end": 12510,
                          "loc": {
                            "start": {
                              "line": 335,
                              "column": 35
                            },
                            "end": {
                              "line": 335,
                              "column": 50
                            },
                            "identifierName": "otherKeyDefault"
                          },
                          "name": "otherKeyDefault"
                        },
                        "computed": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 12512,
                      "end": 12852,
                      "loc": {
                        "start": {
                          "line": 335,
                          "column": 52
                        },
                        "end": {
                          "line": 344,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 12520,
                          "end": 12656,
                          "loc": {
                            "start": {
                              "line": 336,
                              "column": 6
                            },
                            "end": {
                              "line": 338,
                              "column": 9
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 12520,
                            "end": 12655,
                            "loc": {
                              "start": {
                                "line": 336,
                                "column": 6
                              },
                              "end": {
                                "line": 338,
                                "column": 8
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 12520,
                              "end": 12540,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 6
                                },
                                "end": {
                                  "line": 336,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12520,
                                "end": 12531,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12520,
                                  "end": 12524,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12525,
                                  "end": 12531,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 17
                                    },
                                    "identifierName": "paired"
                                  },
                                  "name": "paired"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12532,
                                "end": 12540,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 26
                                  },
                                  "identifierName": "toTarget"
                                },
                                "name": "toTarget"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "NewExpression",
                              "start": 12543,
                              "end": 12655,
                              "loc": {
                                "start": {
                                  "line": 336,
                                  "column": 29
                                },
                                "end": {
                                  "line": 338,
                                  "column": 8
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 12547,
                                "end": 12556,
                                "loc": {
                                  "start": {
                                    "line": 336,
                                    "column": 33
                                  },
                                  "end": {
                                    "line": 336,
                                    "column": 42
                                  },
                                  "identifierName": "BelongsTo"
                                },
                                "name": "BelongsTo"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 12557,
                                  "end": 12582,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 68
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12557,
                                    "end": 12576,
                                    "loc": {
                                      "start": {
                                        "line": 336,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 336,
                                        "column": 62
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12557,
                                      "end": 12568,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 54
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 12557,
                                        "end": 12561,
                                        "loc": {
                                          "start": {
                                            "line": 336,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 336,
                                            "column": 47
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12562,
                                        "end": 12568,
                                        "loc": {
                                          "start": {
                                            "line": 336,
                                            "column": 48
                                          },
                                          "end": {
                                            "line": 336,
                                            "column": 54
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12569,
                                      "end": 12576,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 55
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 62
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12577,
                                    "end": 12582,
                                    "loc": {
                                      "start": {
                                        "line": 336,
                                        "column": 63
                                      },
                                      "end": {
                                        "line": 336,
                                        "column": 68
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 12584,
                                  "end": 12602,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 336,
                                      "column": 88
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12584,
                                    "end": 12595,
                                    "loc": {
                                      "start": {
                                        "line": 336,
                                        "column": 70
                                      },
                                      "end": {
                                        "line": 336,
                                        "column": 81
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 12584,
                                      "end": 12588,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 74
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12589,
                                      "end": 12595,
                                      "loc": {
                                        "start": {
                                          "line": 336,
                                          "column": 75
                                        },
                                        "end": {
                                          "line": 336,
                                          "column": 81
                                        },
                                        "identifierName": "paired"
                                      },
                                      "name": "paired"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12596,
                                    "end": 12602,
                                    "loc": {
                                      "start": {
                                        "line": 336,
                                        "column": 82
                                      },
                                      "end": {
                                        "line": 336,
                                        "column": 88
                                      },
                                      "identifierName": "target"
                                    },
                                    "name": "target"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 12604,
                                  "end": 12654,
                                  "loc": {
                                    "start": {
                                      "line": 336,
                                      "column": 90
                                    },
                                    "end": {
                                      "line": 338,
                                      "column": 7
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "ObjectProperty",
                                      "start": 12614,
                                      "end": 12646,
                                      "loc": {
                                        "start": {
                                          "line": 337,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 337,
                                          "column": 40
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 12614,
                                        "end": 12624,
                                        "loc": {
                                          "start": {
                                            "line": 337,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 337,
                                            "column": 18
                                          },
                                          "identifierName": "foreignKey"
                                        },
                                        "name": "foreignKey"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 12626,
                                        "end": 12646,
                                        "loc": {
                                          "start": {
                                            "line": 337,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 337,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12626,
                                          "end": 12637,
                                          "loc": {
                                            "start": {
                                              "line": 337,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 337,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12626,
                                            "end": 12630,
                                            "loc": {
                                              "start": {
                                                "line": 337,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 337,
                                                "column": 24
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12631,
                                            "end": 12637,
                                            "loc": {
                                              "start": {
                                                "line": 337,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 337,
                                                "column": 31
                                              },
                                              "identifierName": "paired"
                                            },
                                            "name": "paired"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12638,
                                          "end": 12646,
                                          "loc": {
                                            "start": {
                                              "line": 337,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 337,
                                              "column": 40
                                            },
                                            "identifierName": "otherKey"
                                          },
                                          "name": "otherKey"
                                        },
                                        "computed": false
                                      }
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 12664,
                          "end": 12846,
                          "loc": {
                            "start": {
                              "line": 340,
                              "column": 6
                            },
                            "end": {
                              "line": 343,
                              "column": 9
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 12664,
                            "end": 12845,
                            "loc": {
                              "start": {
                                "line": 340,
                                "column": 6
                              },
                              "end": {
                                "line": 343,
                                "column": 8
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 12664,
                              "end": 12689,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 6
                                },
                                "end": {
                                  "line": 340,
                                  "column": 31
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 12664,
                                "end": 12675,
                                "loc": {
                                  "start": {
                                    "line": 340,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 17
                                  }
                                },
                                "object": {
                                  "type": "ThisExpression",
                                  "start": 12664,
                                  "end": 12668,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 10
                                    }
                                  }
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 12669,
                                  "end": 12675,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 17
                                    },
                                    "identifierName": "paired"
                                  },
                                  "name": "paired"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 12676,
                                "end": 12689,
                                "loc": {
                                  "start": {
                                    "line": 340,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 31
                                  },
                                  "identifierName": "oneFromTarget"
                                },
                                "name": "oneFromTarget"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "NewExpression",
                              "start": 12692,
                              "end": 12845,
                              "loc": {
                                "start": {
                                  "line": 340,
                                  "column": 34
                                },
                                "end": {
                                  "line": 343,
                                  "column": 8
                                }
                              },
                              "callee": {
                                "type": "Identifier",
                                "start": 12696,
                                "end": 12702,
                                "loc": {
                                  "start": {
                                    "line": 340,
                                    "column": 38
                                  },
                                  "end": {
                                    "line": 340,
                                    "column": 44
                                  },
                                  "identifierName": "HasOne"
                                },
                                "name": "HasOne"
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 12703,
                                  "end": 12721,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 63
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12703,
                                    "end": 12714,
                                    "loc": {
                                      "start": {
                                        "line": 340,
                                        "column": 45
                                      },
                                      "end": {
                                        "line": 340,
                                        "column": 56
                                      }
                                    },
                                    "object": {
                                      "type": "ThisExpression",
                                      "start": 12703,
                                      "end": 12707,
                                      "loc": {
                                        "start": {
                                          "line": 340,
                                          "column": 45
                                        },
                                        "end": {
                                          "line": 340,
                                          "column": 49
                                        }
                                      }
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12708,
                                      "end": 12714,
                                      "loc": {
                                        "start": {
                                          "line": 340,
                                          "column": 50
                                        },
                                        "end": {
                                          "line": 340,
                                          "column": 56
                                        },
                                        "identifierName": "paired"
                                      },
                                      "name": "paired"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12715,
                                    "end": 12721,
                                    "loc": {
                                      "start": {
                                        "line": 340,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 340,
                                        "column": 63
                                      },
                                      "identifierName": "target"
                                    },
                                    "name": "target"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 12723,
                                  "end": 12748,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 65
                                    },
                                    "end": {
                                      "line": 340,
                                      "column": 90
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 12723,
                                    "end": 12742,
                                    "loc": {
                                      "start": {
                                        "line": 340,
                                        "column": 65
                                      },
                                      "end": {
                                        "line": 340,
                                        "column": 84
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 12723,
                                      "end": 12734,
                                      "loc": {
                                        "start": {
                                          "line": 340,
                                          "column": 65
                                        },
                                        "end": {
                                          "line": 340,
                                          "column": 76
                                        }
                                      },
                                      "object": {
                                        "type": "ThisExpression",
                                        "start": 12723,
                                        "end": 12727,
                                        "loc": {
                                          "start": {
                                            "line": 340,
                                            "column": 65
                                          },
                                          "end": {
                                            "line": 340,
                                            "column": 69
                                          }
                                        }
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 12728,
                                        "end": 12734,
                                        "loc": {
                                          "start": {
                                            "line": 340,
                                            "column": 70
                                          },
                                          "end": {
                                            "line": 340,
                                            "column": 76
                                          },
                                          "identifierName": "paired"
                                        },
                                        "name": "paired"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 12735,
                                      "end": 12742,
                                      "loc": {
                                        "start": {
                                          "line": 340,
                                          "column": 77
                                        },
                                        "end": {
                                          "line": 340,
                                          "column": 84
                                        },
                                        "identifierName": "through"
                                      },
                                      "name": "through"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 12743,
                                    "end": 12748,
                                    "loc": {
                                      "start": {
                                        "line": 340,
                                        "column": 85
                                      },
                                      "end": {
                                        "line": 340,
                                        "column": 90
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "ObjectExpression",
                                  "start": 12750,
                                  "end": 12844,
                                  "loc": {
                                    "start": {
                                      "line": 340,
                                      "column": 92
                                    },
                                    "end": {
                                      "line": 343,
                                      "column": 7
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "ObjectProperty",
                                      "start": 12760,
                                      "end": 12792,
                                      "loc": {
                                        "start": {
                                          "line": 341,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 341,
                                          "column": 40
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 12760,
                                        "end": 12770,
                                        "loc": {
                                          "start": {
                                            "line": 341,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 341,
                                            "column": 18
                                          },
                                          "identifierName": "foreignKey"
                                        },
                                        "name": "foreignKey"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 12772,
                                        "end": 12792,
                                        "loc": {
                                          "start": {
                                            "line": 341,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 341,
                                            "column": 40
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12772,
                                          "end": 12783,
                                          "loc": {
                                            "start": {
                                              "line": 341,
                                              "column": 20
                                            },
                                            "end": {
                                              "line": 341,
                                              "column": 31
                                            }
                                          },
                                          "object": {
                                            "type": "ThisExpression",
                                            "start": 12772,
                                            "end": 12776,
                                            "loc": {
                                              "start": {
                                                "line": 341,
                                                "column": 20
                                              },
                                              "end": {
                                                "line": 341,
                                                "column": 24
                                              }
                                            }
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12777,
                                            "end": 12783,
                                            "loc": {
                                              "start": {
                                                "line": 341,
                                                "column": 25
                                              },
                                              "end": {
                                                "line": 341,
                                                "column": 31
                                              },
                                              "identifierName": "paired"
                                            },
                                            "name": "paired"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12784,
                                          "end": 12792,
                                          "loc": {
                                            "start": {
                                              "line": 341,
                                              "column": 32
                                            },
                                            "end": {
                                              "line": 341,
                                              "column": 40
                                            },
                                            "identifierName": "otherKey"
                                          },
                                          "name": "otherKey"
                                        },
                                        "computed": false
                                      }
                                    },
                                    {
                                      "type": "ObjectProperty",
                                      "start": 12802,
                                      "end": 12836,
                                      "loc": {
                                        "start": {
                                          "line": 342,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 342,
                                          "column": 42
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 12802,
                                        "end": 12804,
                                        "loc": {
                                          "start": {
                                            "line": 342,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 342,
                                            "column": 10
                                          },
                                          "identifierName": "as"
                                        },
                                        "name": "as"
                                      },
                                      "value": {
                                        "type": "MemberExpression",
                                        "start": 12806,
                                        "end": 12836,
                                        "loc": {
                                          "start": {
                                            "line": 342,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 342,
                                            "column": 42
                                          }
                                        },
                                        "object": {
                                          "type": "MemberExpression",
                                          "start": 12806,
                                          "end": 12831,
                                          "loc": {
                                            "start": {
                                              "line": 342,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 342,
                                              "column": 37
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 12806,
                                            "end": 12825,
                                            "loc": {
                                              "start": {
                                                "line": 342,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 342,
                                                "column": 31
                                              }
                                            },
                                            "object": {
                                              "type": "MemberExpression",
                                              "start": 12806,
                                              "end": 12817,
                                              "loc": {
                                                "start": {
                                                  "line": 342,
                                                  "column": 12
                                                },
                                                "end": {
                                                  "line": 342,
                                                  "column": 23
                                                }
                                              },
                                              "object": {
                                                "type": "ThisExpression",
                                                "start": 12806,
                                                "end": 12810,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 12
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 16
                                                  }
                                                }
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 12811,
                                                "end": 12817,
                                                "loc": {
                                                  "start": {
                                                    "line": 342,
                                                    "column": 17
                                                  },
                                                  "end": {
                                                    "line": 342,
                                                    "column": 23
                                                  },
                                                  "identifierName": "paired"
                                                },
                                                "name": "paired"
                                              },
                                              "computed": false
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 12818,
                                              "end": 12825,
                                              "loc": {
                                                "start": {
                                                  "line": 342,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 342,
                                                  "column": 31
                                                },
                                                "identifierName": "through"
                                              },
                                              "name": "through"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 12826,
                                            "end": 12831,
                                            "loc": {
                                              "start": {
                                                "line": 342,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 342,
                                                "column": 37
                                              },
                                              "identifierName": "model"
                                            },
                                            "name": "model"
                                          },
                                          "computed": false
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 12832,
                                          "end": 12836,
                                          "loc": {
                                            "start": {
                                              "line": 342,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 342,
                                              "column": 42
                                            },
                                            "identifierName": "name"
                                          },
                                          "name": "name"
                                        },
                                        "computed": false
                                      }
                                    }
                                  ]
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 12858,
                    "end": 12893,
                    "loc": {
                      "start": {
                        "line": 346,
                        "column": 4
                      },
                      "end": {
                        "line": 346,
                        "column": 39
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 12858,
                      "end": 12892,
                      "loc": {
                        "start": {
                          "line": 346,
                          "column": 4
                        },
                        "end": {
                          "line": 346,
                          "column": 38
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 12858,
                        "end": 12886,
                        "loc": {
                          "start": {
                            "line": 346,
                            "column": 4
                          },
                          "end": {
                            "line": 346,
                            "column": 32
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 12858,
                          "end": 12865,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 4
                            },
                            "end": {
                              "line": 346,
                              "column": 11
                            },
                            "identifierName": "Helpers"
                          },
                          "name": "Helpers"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 12866,
                          "end": 12886,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 12
                            },
                            "end": {
                              "line": 346,
                              "column": 32
                            },
                            "identifierName": "checkNamingCollision"
                          },
                          "name": "checkNamingCollision"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 12887,
                          "end": 12891,
                          "loc": {
                            "start": {
                              "line": 346,
                              "column": 33
                            },
                            "end": {
                              "line": 346,
                              "column": 37
                            }
                          }
                        }
                      ]
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 12899,
                    "end": 12911,
                    "loc": {
                      "start": {
                        "line": 348,
                        "column": 4
                      },
                      "end": {
                        "line": 348,
                        "column": 16
                      }
                    },
                    "argument": {
                      "type": "ThisExpression",
                      "start": 12906,
                      "end": 12910,
                      "loc": {
                        "start": {
                          "line": 348,
                          "column": 11
                        },
                        "end": {
                          "line": 348,
                          "column": 15
                        }
                      }
                    }
                  }
                ],
                "directives": []
              },
              "leadingComments": [
                {
                  "type": "CommentLine",
                  "value": " the id is in the target table",
                  "start": 7588,
                  "end": 7620,
                  "loc": {
                    "start": {
                      "line": 226,
                      "column": 2
                    },
                    "end": {
                      "line": 226,
                      "column": 34
                    }
                  }
                },
                {
                  "type": "CommentLine",
                  "value": " or in an extra table which connects two tables",
                  "start": 7623,
                  "end": 7672,
                  "loc": {
                    "start": {
                      "line": 227,
                      "column": 2
                    },
                    "end": {
                      "line": 227,
                      "column": 51
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 12919,
              "end": 13250,
              "loc": {
                "start": {
                  "line": 351,
                  "column": 2
                },
                "end": {
                  "line": 361,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 12919,
                "end": 12924,
                "loc": {
                  "start": {
                    "line": 351,
                    "column": 2
                  },
                  "end": {
                    "line": 351,
                    "column": 7
                  },
                  "identifierName": "mixin"
                },
                "name": "mixin"
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 12925,
                  "end": 12928,
                  "loc": {
                    "start": {
                      "line": 351,
                      "column": 8
                    },
                    "end": {
                      "line": 351,
                      "column": 11
                    },
                    "identifierName": "obj"
                  },
                  "name": "obj"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 12930,
                "end": 13250,
                "loc": {
                  "start": {
                    "line": 351,
                    "column": 13
                  },
                  "end": {
                    "line": 361,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 12936,
                    "end": 13059,
                    "loc": {
                      "start": {
                        "line": 352,
                        "column": 4
                      },
                      "end": {
                        "line": 352,
                        "column": 127
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 12942,
                        "end": 13058,
                        "loc": {
                          "start": {
                            "line": 352,
                            "column": 10
                          },
                          "end": {
                            "line": 352,
                            "column": 126
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 12942,
                          "end": 12949,
                          "loc": {
                            "start": {
                              "line": 352,
                              "column": 10
                            },
                            "end": {
                              "line": 352,
                              "column": 17
                            },
                            "identifierName": "methods"
                          },
                          "name": "methods"
                        },
                        "init": {
                          "type": "ArrayExpression",
                          "start": 12952,
                          "end": 13058,
                          "loc": {
                            "start": {
                              "line": 352,
                              "column": 20
                            },
                            "end": {
                              "line": 352,
                              "column": 126
                            }
                          },
                          "elements": [
                            {
                              "type": "StringLiteral",
                              "start": 12953,
                              "end": 12958,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 21
                                },
                                "end": {
                                  "line": 352,
                                  "column": 26
                                }
                              },
                              "extra": {
                                "rawValue": "get",
                                "raw": "'get'"
                              },
                              "value": "get"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 12960,
                              "end": 12967,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 28
                                },
                                "end": {
                                  "line": 352,
                                  "column": 35
                                }
                              },
                              "extra": {
                                "rawValue": "count",
                                "raw": "'count'"
                              },
                              "value": "count"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 12969,
                              "end": 12980,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 37
                                },
                                "end": {
                                  "line": 352,
                                  "column": 48
                                }
                              },
                              "extra": {
                                "rawValue": "hasSingle",
                                "raw": "'hasSingle'"
                              },
                              "value": "hasSingle"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 12982,
                              "end": 12990,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 50
                                },
                                "end": {
                                  "line": 352,
                                  "column": 58
                                }
                              },
                              "extra": {
                                "rawValue": "hasAll",
                                "raw": "'hasAll'"
                              },
                              "value": "hasAll"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 12992,
                              "end": 12997,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 60
                                },
                                "end": {
                                  "line": 352,
                                  "column": 65
                                }
                              },
                              "extra": {
                                "rawValue": "set",
                                "raw": "'set'"
                              },
                              "value": "set"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 12999,
                              "end": 13004,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 67
                                },
                                "end": {
                                  "line": 352,
                                  "column": 72
                                }
                              },
                              "extra": {
                                "rawValue": "add",
                                "raw": "'add'"
                              },
                              "value": "add"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 13006,
                              "end": 13019,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 74
                                },
                                "end": {
                                  "line": 352,
                                  "column": 87
                                }
                              },
                              "extra": {
                                "rawValue": "addMultiple",
                                "raw": "'addMultiple'"
                              },
                              "value": "addMultiple"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 13021,
                              "end": 13029,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 89
                                },
                                "end": {
                                  "line": 352,
                                  "column": 97
                                }
                              },
                              "extra": {
                                "rawValue": "remove",
                                "raw": "'remove'"
                              },
                              "value": "remove"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 13031,
                              "end": 13047,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 99
                                },
                                "end": {
                                  "line": 352,
                                  "column": 115
                                }
                              },
                              "extra": {
                                "rawValue": "removeMultiple",
                                "raw": "'removeMultiple'"
                              },
                              "value": "removeMultiple"
                            },
                            {
                              "type": "StringLiteral",
                              "start": 13049,
                              "end": 13057,
                              "loc": {
                                "start": {
                                  "line": 352,
                                  "column": 117
                                },
                                "end": {
                                  "line": 352,
                                  "column": 125
                                }
                              },
                              "extra": {
                                "rawValue": "create",
                                "raw": "'create'"
                              },
                              "value": "create"
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 13064,
                    "end": 13190,
                    "loc": {
                      "start": {
                        "line": 353,
                        "column": 4
                      },
                      "end": {
                        "line": 358,
                        "column": 6
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 13070,
                        "end": 13189,
                        "loc": {
                          "start": {
                            "line": 353,
                            "column": 10
                          },
                          "end": {
                            "line": 358,
                            "column": 5
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 13070,
                          "end": 13077,
                          "loc": {
                            "start": {
                              "line": 353,
                              "column": 10
                            },
                            "end": {
                              "line": 353,
                              "column": 17
                            },
                            "identifierName": "aliases"
                          },
                          "name": "aliases"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 13080,
                          "end": 13189,
                          "loc": {
                            "start": {
                              "line": 353,
                              "column": 20
                            },
                            "end": {
                              "line": 358,
                              "column": 5
                            }
                          },
                          "properties": [
                            {
                              "type": "ObjectProperty",
                              "start": 13088,
                              "end": 13104,
                              "loc": {
                                "start": {
                                  "line": 354,
                                  "column": 6
                                },
                                "end": {
                                  "line": 354,
                                  "column": 22
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 13088,
                                "end": 13097,
                                "loc": {
                                  "start": {
                                    "line": 354,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 354,
                                    "column": 15
                                  },
                                  "identifierName": "hasSingle"
                                },
                                "name": "hasSingle"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 13099,
                                "end": 13104,
                                "loc": {
                                  "start": {
                                    "line": 354,
                                    "column": 17
                                  },
                                  "end": {
                                    "line": 354,
                                    "column": 22
                                  }
                                },
                                "extra": {
                                  "rawValue": "has",
                                  "raw": "'has'"
                                },
                                "value": "has"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 13112,
                              "end": 13125,
                              "loc": {
                                "start": {
                                  "line": 355,
                                  "column": 6
                                },
                                "end": {
                                  "line": 355,
                                  "column": 19
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 13112,
                                "end": 13118,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 12
                                  },
                                  "identifierName": "hasAll"
                                },
                                "name": "hasAll"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 13120,
                                "end": 13125,
                                "loc": {
                                  "start": {
                                    "line": 355,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 355,
                                    "column": 19
                                  }
                                },
                                "extra": {
                                  "rawValue": "has",
                                  "raw": "'has'"
                                },
                                "value": "has"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 13133,
                              "end": 13151,
                              "loc": {
                                "start": {
                                  "line": 356,
                                  "column": 6
                                },
                                "end": {
                                  "line": 356,
                                  "column": 24
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 13133,
                                "end": 13144,
                                "loc": {
                                  "start": {
                                    "line": 356,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 356,
                                    "column": 17
                                  },
                                  "identifierName": "addMultiple"
                                },
                                "name": "addMultiple"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 13146,
                                "end": 13151,
                                "loc": {
                                  "start": {
                                    "line": 356,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 356,
                                    "column": 24
                                  }
                                },
                                "extra": {
                                  "rawValue": "add",
                                  "raw": "'add'"
                                },
                                "value": "add"
                              }
                            },
                            {
                              "type": "ObjectProperty",
                              "start": 13159,
                              "end": 13183,
                              "loc": {
                                "start": {
                                  "line": 357,
                                  "column": 6
                                },
                                "end": {
                                  "line": 357,
                                  "column": 30
                                }
                              },
                              "method": false,
                              "shorthand": false,
                              "computed": false,
                              "key": {
                                "type": "Identifier",
                                "start": 13159,
                                "end": 13173,
                                "loc": {
                                  "start": {
                                    "line": 357,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 357,
                                    "column": 20
                                  },
                                  "identifierName": "removeMultiple"
                                },
                                "name": "removeMultiple"
                              },
                              "value": {
                                "type": "StringLiteral",
                                "start": 13175,
                                "end": 13183,
                                "loc": {
                                  "start": {
                                    "line": 357,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 357,
                                    "column": 30
                                  }
                                },
                                "extra": {
                                  "rawValue": "remove",
                                  "raw": "'remove'"
                                },
                                "value": "remove"
                              }
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 13196,
                    "end": 13246,
                    "loc": {
                      "start": {
                        "line": 360,
                        "column": 4
                      },
                      "end": {
                        "line": 360,
                        "column": 54
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 13196,
                      "end": 13245,
                      "loc": {
                        "start": {
                          "line": 360,
                          "column": 4
                        },
                        "end": {
                          "line": 360,
                          "column": 53
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 13196,
                        "end": 13216,
                        "loc": {
                          "start": {
                            "line": 360,
                            "column": 4
                          },
                          "end": {
                            "line": 360,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 13196,
                          "end": 13203,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 4
                            },
                            "end": {
                              "line": 360,
                              "column": 11
                            },
                            "identifierName": "Helpers"
                          },
                          "name": "Helpers"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 13204,
                          "end": 13216,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 12
                            },
                            "end": {
                              "line": 360,
                              "column": 24
                            },
                            "identifierName": "mixinMethods"
                          },
                          "name": "mixinMethods"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ThisExpression",
                          "start": 13217,
                          "end": 13221,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 25
                            },
                            "end": {
                              "line": 360,
                              "column": 29
                            }
                          }
                        },
                        {
                          "type": "Identifier",
                          "start": 13223,
                          "end": 13226,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 31
                            },
                            "end": {
                              "line": 360,
                              "column": 34
                            },
                            "identifierName": "obj"
                          },
                          "name": "obj"
                        },
                        {
                          "type": "Identifier",
                          "start": 13228,
                          "end": 13235,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 36
                            },
                            "end": {
                              "line": 360,
                              "column": 43
                            },
                            "identifierName": "methods"
                          },
                          "name": "methods"
                        },
                        {
                          "type": "Identifier",
                          "start": 13237,
                          "end": 13244,
                          "loc": {
                            "start": {
                              "line": 360,
                              "column": 45
                            },
                            "end": {
                              "line": 360,
                              "column": 52
                            },
                            "identifierName": "aliases"
                          },
                          "name": "aliases"
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Get everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @param {String} [options.schema] Apply a schema on the related model\n   * @see {@link Model.findAll}  for a full explanation of options\n   * @return {Promise<Array<Model>>}\n   ",
                  "start": 13254,
                  "end": 13780,
                  "loc": {
                    "start": {
                      "line": 363,
                      "column": 2
                    },
                    "end": {
                      "line": 372,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 13783,
              "end": 15280,
              "loc": {
                "start": {
                  "line": 373,
                  "column": 2
                },
                "end": {
                  "line": 430,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 13783,
                "end": 13786,
                "loc": {
                  "start": {
                    "line": 373,
                    "column": 2
                  },
                  "end": {
                    "line": 373,
                    "column": 5
                  },
                  "identifierName": "get"
                },
                "name": "get",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 13787,
                  "end": 13795,
                  "loc": {
                    "start": {
                      "line": 373,
                      "column": 6
                    },
                    "end": {
                      "line": 373,
                      "column": 14
                    },
                    "identifierName": "instance"
                  },
                  "name": "instance"
                },
                {
                  "type": "Identifier",
                  "start": 13797,
                  "end": 13804,
                  "loc": {
                    "start": {
                      "line": 373,
                      "column": 16
                    },
                    "end": {
                      "line": 373,
                      "column": 23
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 13806,
                "end": 15280,
                "loc": {
                  "start": {
                    "line": 373,
                    "column": 25
                  },
                  "end": {
                    "line": 430,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 13812,
                    "end": 13853,
                    "loc": {
                      "start": {
                        "line": 374,
                        "column": 4
                      },
                      "end": {
                        "line": 374,
                        "column": 45
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 13812,
                      "end": 13852,
                      "loc": {
                        "start": {
                          "line": 374,
                          "column": 4
                        },
                        "end": {
                          "line": 374,
                          "column": 44
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 13812,
                        "end": 13819,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 4
                          },
                          "end": {
                            "line": 374,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 13822,
                        "end": 13852,
                        "loc": {
                          "start": {
                            "line": 374,
                            "column": 14
                          },
                          "end": {
                            "line": 374,
                            "column": 44
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 13822,
                          "end": 13846,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 14
                            },
                            "end": {
                              "line": 374,
                              "column": 38
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 13822,
                            "end": 13837,
                            "loc": {
                              "start": {
                                "line": 374,
                                "column": 14
                              },
                              "end": {
                                "line": 374,
                                "column": 29
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 13822,
                              "end": 13827,
                              "loc": {
                                "start": {
                                  "line": 374,
                                  "column": 14
                                },
                                "end": {
                                  "line": 374,
                                  "column": 19
                                },
                                "identifierName": "Utils"
                              },
                              "name": "Utils"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 13828,
                              "end": 13837,
                              "loc": {
                                "start": {
                                  "line": 374,
                                  "column": 20
                                },
                                "end": {
                                  "line": 374,
                                  "column": 29
                                },
                                "identifierName": "cloneDeep"
                              },
                              "name": "cloneDeep"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 13838,
                              "end": 13845,
                              "loc": {
                                "start": {
                                  "line": 374,
                                  "column": 30
                                },
                                "end": {
                                  "line": 374,
                                  "column": 37
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ]
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 13850,
                          "end": 13852,
                          "loc": {
                            "start": {
                              "line": 374,
                              "column": 42
                            },
                            "end": {
                              "line": 374,
                              "column": 44
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 13859,
                    "end": 13884,
                    "loc": {
                      "start": {
                        "line": 376,
                        "column": 4
                      },
                      "end": {
                        "line": 376,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 13865,
                        "end": 13883,
                        "loc": {
                          "start": {
                            "line": 376,
                            "column": 10
                          },
                          "end": {
                            "line": 376,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 13865,
                          "end": 13876,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 10
                            },
                            "end": {
                              "line": 376,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 13879,
                          "end": 13883,
                          "loc": {
                            "start": {
                              "line": 376,
                              "column": 24
                            },
                            "end": {
                              "line": 376,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 13889,
                    "end": 13925,
                    "loc": {
                      "start": {
                        "line": 377,
                        "column": 4
                      },
                      "end": {
                        "line": 377,
                        "column": 40
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 13895,
                        "end": 13924,
                        "loc": {
                          "start": {
                            "line": 377,
                            "column": 10
                          },
                          "end": {
                            "line": 377,
                            "column": 39
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 13895,
                          "end": 13902,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 10
                            },
                            "end": {
                              "line": 377,
                              "column": 17
                            },
                            "identifierName": "through"
                          },
                          "name": "through"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 13905,
                          "end": 13924,
                          "loc": {
                            "start": {
                              "line": 377,
                              "column": 20
                            },
                            "end": {
                              "line": 377,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 13905,
                            "end": 13916,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 20
                              },
                              "end": {
                                "line": 377,
                                "column": 31
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 13917,
                            "end": 13924,
                            "loc": {
                              "start": {
                                "line": 377,
                                "column": 32
                              },
                              "end": {
                                "line": 377,
                                "column": 39
                              },
                              "identifierName": "through"
                            },
                            "name": "through"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 13930,
                    "end": 13945,
                    "loc": {
                      "start": {
                        "line": 378,
                        "column": 4
                      },
                      "end": {
                        "line": 378,
                        "column": 19
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 13934,
                        "end": 13944,
                        "loc": {
                          "start": {
                            "line": 378,
                            "column": 8
                          },
                          "end": {
                            "line": 378,
                            "column": 18
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 13934,
                          "end": 13944,
                          "loc": {
                            "start": {
                              "line": 378,
                              "column": 8
                            },
                            "end": {
                              "line": 378,
                              "column": 18
                            },
                            "identifierName": "scopeWhere"
                          },
                          "name": "scopeWhere"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 13950,
                    "end": 13967,
                    "loc": {
                      "start": {
                        "line": 379,
                        "column": 4
                      },
                      "end": {
                        "line": 379,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 13954,
                        "end": 13966,
                        "loc": {
                          "start": {
                            "line": 379,
                            "column": 8
                          },
                          "end": {
                            "line": 379,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 13954,
                          "end": 13966,
                          "loc": {
                            "start": {
                              "line": 379,
                              "column": 8
                            },
                            "end": {
                              "line": 379,
                              "column": 20
                            },
                            "identifierName": "throughWhere"
                          },
                          "name": "throughWhere"
                        },
                        "init": null
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 13973,
                    "end": 14050,
                    "loc": {
                      "start": {
                        "line": 381,
                        "column": 4
                      },
                      "end": {
                        "line": 383,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 13977,
                      "end": 13994,
                      "loc": {
                        "start": {
                          "line": 381,
                          "column": 8
                        },
                        "end": {
                          "line": 381,
                          "column": 25
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 13977,
                        "end": 13988,
                        "loc": {
                          "start": {
                            "line": 381,
                            "column": 8
                          },
                          "end": {
                            "line": 381,
                            "column": 19
                          },
                          "identifierName": "association"
                        },
                        "name": "association"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 13989,
                        "end": 13994,
                        "loc": {
                          "start": {
                            "line": 381,
                            "column": 20
                          },
                          "end": {
                            "line": 381,
                            "column": 25
                          },
                          "identifierName": "scope"
                        },
                        "name": "scope"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 13996,
                      "end": 14050,
                      "loc": {
                        "start": {
                          "line": 381,
                          "column": 27
                        },
                        "end": {
                          "line": 383,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 14004,
                          "end": 14044,
                          "loc": {
                            "start": {
                              "line": 382,
                              "column": 6
                            },
                            "end": {
                              "line": 382,
                              "column": 46
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 14004,
                            "end": 14043,
                            "loc": {
                              "start": {
                                "line": 382,
                                "column": 6
                              },
                              "end": {
                                "line": 382,
                                "column": 45
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 14004,
                              "end": 14014,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 6
                                },
                                "end": {
                                  "line": 382,
                                  "column": 16
                                },
                                "identifierName": "scopeWhere"
                              },
                              "name": "scopeWhere"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 14017,
                              "end": 14043,
                              "loc": {
                                "start": {
                                  "line": 382,
                                  "column": 19
                                },
                                "end": {
                                  "line": 382,
                                  "column": 45
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14017,
                                "end": 14024,
                                "loc": {
                                  "start": {
                                    "line": 382,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 382,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14017,
                                  "end": 14018,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 20
                                    },
                                    "identifierName": "_"
                                  },
                                  "name": "_"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14019,
                                  "end": 14024,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 21
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 26
                                    },
                                    "identifierName": "clone"
                                  },
                                  "name": "clone"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 14025,
                                  "end": 14042,
                                  "loc": {
                                    "start": {
                                      "line": 382,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 382,
                                      "column": 44
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14025,
                                    "end": 14036,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 38
                                      },
                                      "identifierName": "association"
                                    },
                                    "name": "association"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14037,
                                    "end": 14042,
                                    "loc": {
                                      "start": {
                                        "line": 382,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 382,
                                        "column": 44
                                      },
                                      "identifierName": "scope"
                                    },
                                    "name": "scope"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 14056,
                    "end": 14144,
                    "loc": {
                      "start": {
                        "line": 385,
                        "column": 4
                      },
                      "end": {
                        "line": 390,
                        "column": 6
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 14056,
                      "end": 14143,
                      "loc": {
                        "start": {
                          "line": 385,
                          "column": 4
                        },
                        "end": {
                          "line": 390,
                          "column": 5
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 14056,
                        "end": 14069,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 4
                          },
                          "end": {
                            "line": 385,
                            "column": 17
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14056,
                          "end": 14063,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 4
                            },
                            "end": {
                              "line": 385,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14064,
                          "end": 14069,
                          "loc": {
                            "start": {
                              "line": 385,
                              "column": 12
                            },
                            "end": {
                              "line": 385,
                              "column": 17
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "ObjectExpression",
                        "start": 14072,
                        "end": 14143,
                        "loc": {
                          "start": {
                            "line": 385,
                            "column": 20
                          },
                          "end": {
                            "line": 390,
                            "column": 5
                          }
                        },
                        "properties": [
                          {
                            "type": "ObjectProperty",
                            "start": 14080,
                            "end": 14137,
                            "loc": {
                              "start": {
                                "line": 386,
                                "column": 6
                              },
                              "end": {
                                "line": 389,
                                "column": 7
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 14080,
                              "end": 14084,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 6
                                },
                                "end": {
                                  "line": 386,
                                  "column": 10
                                },
                                "identifierName": "$and"
                              },
                              "name": "$and"
                            },
                            "value": {
                              "type": "ArrayExpression",
                              "start": 14086,
                              "end": 14137,
                              "loc": {
                                "start": {
                                  "line": 386,
                                  "column": 12
                                },
                                "end": {
                                  "line": 389,
                                  "column": 7
                                }
                              },
                              "elements": [
                                {
                                  "type": "Identifier",
                                  "start": 14096,
                                  "end": 14106,
                                  "loc": {
                                    "start": {
                                      "line": 387,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 387,
                                      "column": 18
                                    },
                                    "identifierName": "scopeWhere"
                                  },
                                  "name": "scopeWhere"
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 14116,
                                  "end": 14129,
                                  "loc": {
                                    "start": {
                                      "line": 388,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 388,
                                      "column": 21
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 14116,
                                    "end": 14123,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 15
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14124,
                                    "end": 14129,
                                    "loc": {
                                      "start": {
                                        "line": 388,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 388,
                                        "column": 21
                                      },
                                      "identifierName": "where"
                                    },
                                    "name": "where"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 14150,
                    "end": 14905,
                    "loc": {
                      "start": {
                        "line": 392,
                        "column": 4
                      },
                      "end": {
                        "line": 414,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 14154,
                      "end": 14193,
                      "loc": {
                        "start": {
                          "line": 392,
                          "column": 8
                        },
                        "end": {
                          "line": 392,
                          "column": 47
                        }
                      },
                      "left": {
                        "type": "CallExpression",
                        "start": 14154,
                        "end": 14175,
                        "loc": {
                          "start": {
                            "line": 392,
                            "column": 8
                          },
                          "end": {
                            "line": 392,
                            "column": 29
                          }
                        },
                        "callee": {
                          "type": "Identifier",
                          "start": 14154,
                          "end": 14160,
                          "loc": {
                            "start": {
                              "line": 392,
                              "column": 8
                            },
                            "end": {
                              "line": 392,
                              "column": 14
                            },
                            "identifierName": "Object"
                          },
                          "name": "Object"
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 14161,
                            "end": 14174,
                            "loc": {
                              "start": {
                                "line": 392,
                                "column": 15
                              },
                              "end": {
                                "line": 392,
                                "column": 28
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14161,
                              "end": 14168,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 15
                                },
                                "end": {
                                  "line": 392,
                                  "column": 22
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14169,
                              "end": 14174,
                              "loc": {
                                "start": {
                                  "line": 392,
                                  "column": 23
                                },
                                "end": {
                                  "line": 392,
                                  "column": 28
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "computed": false
                          }
                        ]
                      },
                      "operator": "===",
                      "right": {
                        "type": "MemberExpression",
                        "start": 14180,
                        "end": 14193,
                        "loc": {
                          "start": {
                            "line": 392,
                            "column": 34
                          },
                          "end": {
                            "line": 392,
                            "column": 47
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14180,
                          "end": 14187,
                          "loc": {
                            "start": {
                              "line": 392,
                              "column": 34
                            },
                            "end": {
                              "line": 392,
                              "column": 41
                            },
                            "identifierName": "through"
                          },
                          "name": "through"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14188,
                          "end": 14193,
                          "loc": {
                            "start": {
                              "line": 392,
                              "column": 42
                            },
                            "end": {
                              "line": 392,
                              "column": 47
                            },
                            "identifierName": "model"
                          },
                          "name": "model"
                        },
                        "computed": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 14195,
                      "end": 14905,
                      "loc": {
                        "start": {
                          "line": 392,
                          "column": 49
                        },
                        "end": {
                          "line": 414,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 14203,
                          "end": 14221,
                          "loc": {
                            "start": {
                              "line": 393,
                              "column": 6
                            },
                            "end": {
                              "line": 393,
                              "column": 24
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 14203,
                            "end": 14220,
                            "loc": {
                              "start": {
                                "line": 393,
                                "column": 6
                              },
                              "end": {
                                "line": 393,
                                "column": 23
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 14203,
                              "end": 14215,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 6
                                },
                                "end": {
                                  "line": 393,
                                  "column": 18
                                },
                                "identifierName": "throughWhere"
                              },
                              "name": "throughWhere"
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 14218,
                              "end": 14220,
                              "loc": {
                                "start": {
                                  "line": 393,
                                  "column": 21
                                },
                                "end": {
                                  "line": 393,
                                  "column": 23
                                }
                              },
                              "properties": []
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 14228,
                          "end": 14320,
                          "loc": {
                            "start": {
                              "line": 394,
                              "column": 6
                            },
                            "end": {
                              "line": 394,
                              "column": 98
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 14228,
                            "end": 14319,
                            "loc": {
                              "start": {
                                "line": 394,
                                "column": 6
                              },
                              "end": {
                                "line": 394,
                                "column": 97
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 14228,
                              "end": 14264,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 6
                                },
                                "end": {
                                  "line": 394,
                                  "column": 42
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14228,
                                "end": 14240,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 18
                                  },
                                  "identifierName": "throughWhere"
                                },
                                "name": "throughWhere"
                              },
                              "property": {
                                "type": "MemberExpression",
                                "start": 14241,
                                "end": 14263,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 41
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14241,
                                  "end": 14252,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 30
                                    },
                                    "identifierName": "association"
                                  },
                                  "name": "association"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14253,
                                  "end": 14263,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 41
                                    },
                                    "identifierName": "foreignKey"
                                  },
                                  "name": "foreignKey"
                                },
                                "computed": false
                              },
                              "computed": true
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 14267,
                              "end": 14319,
                              "loc": {
                                "start": {
                                  "line": 394,
                                  "column": 45
                                },
                                "end": {
                                  "line": 394,
                                  "column": 97
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 14267,
                                "end": 14279,
                                "loc": {
                                  "start": {
                                    "line": 394,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 394,
                                    "column": 57
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14267,
                                  "end": 14275,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 53
                                    },
                                    "identifierName": "instance"
                                  },
                                  "name": "instance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14276,
                                  "end": 14279,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 54
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 57
                                    },
                                    "identifierName": "get"
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 14280,
                                  "end": 14318,
                                  "loc": {
                                    "start": {
                                      "line": 394,
                                      "column": 58
                                    },
                                    "end": {
                                      "line": 394,
                                      "column": 96
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 14280,
                                    "end": 14298,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 58
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 76
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14280,
                                      "end": 14291,
                                      "loc": {
                                        "start": {
                                          "line": 394,
                                          "column": 58
                                        },
                                        "end": {
                                          "line": 394,
                                          "column": 69
                                        },
                                        "identifierName": "association"
                                      },
                                      "name": "association"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14292,
                                      "end": 14298,
                                      "loc": {
                                        "start": {
                                          "line": 394,
                                          "column": 70
                                        },
                                        "end": {
                                          "line": 394,
                                          "column": 76
                                        },
                                        "identifierName": "source"
                                      },
                                      "name": "source"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 14299,
                                    "end": 14318,
                                    "loc": {
                                      "start": {
                                        "line": 394,
                                        "column": 77
                                      },
                                      "end": {
                                        "line": 394,
                                        "column": 96
                                      },
                                      "identifierName": "primaryKeyAttribute"
                                    },
                                    "name": "primaryKeyAttribute"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 14328,
                          "end": 14403,
                          "loc": {
                            "start": {
                              "line": 396,
                              "column": 6
                            },
                            "end": {
                              "line": 398,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 14332,
                            "end": 14345,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 10
                              },
                              "end": {
                                "line": 396,
                                "column": 23
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 14332,
                              "end": 14339,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 10
                                },
                                "end": {
                                  "line": 396,
                                  "column": 17
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 14340,
                              "end": 14345,
                              "loc": {
                                "start": {
                                  "line": 396,
                                  "column": 18
                                },
                                "end": {
                                  "line": 396,
                                  "column": 23
                                },
                                "identifierName": "scope"
                              },
                              "name": "scope"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 14347,
                            "end": 14403,
                            "loc": {
                              "start": {
                                "line": 396,
                                "column": 25
                              },
                              "end": {
                                "line": 398,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 14357,
                                "end": 14395,
                                "loc": {
                                  "start": {
                                    "line": 397,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 397,
                                    "column": 46
                                  }
                                },
                                "expression": {
                                  "type": "CallExpression",
                                  "start": 14357,
                                  "end": 14394,
                                  "loc": {
                                    "start": {
                                      "line": 397,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 397,
                                      "column": 45
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 14357,
                                    "end": 14365,
                                    "loc": {
                                      "start": {
                                        "line": 397,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 397,
                                        "column": 16
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 14357,
                                      "end": 14358,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 9
                                        },
                                        "identifierName": "_"
                                      },
                                      "name": "_"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 14359,
                                      "end": 14365,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 16
                                        },
                                        "identifierName": "assign"
                                      },
                                      "name": "assign"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 14366,
                                      "end": 14378,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 29
                                        },
                                        "identifierName": "throughWhere"
                                      },
                                      "name": "throughWhere"
                                    },
                                    {
                                      "type": "MemberExpression",
                                      "start": 14380,
                                      "end": 14393,
                                      "loc": {
                                        "start": {
                                          "line": 397,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 397,
                                          "column": 44
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 14380,
                                        "end": 14387,
                                        "loc": {
                                          "start": {
                                            "line": 397,
                                            "column": 31
                                          },
                                          "end": {
                                            "line": 397,
                                            "column": 38
                                          },
                                          "identifierName": "through"
                                        },
                                        "name": "through"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 14388,
                                        "end": 14393,
                                        "loc": {
                                          "start": {
                                            "line": 397,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 397,
                                            "column": 44
                                          },
                                          "identifierName": "scope"
                                        },
                                        "name": "scope"
                                      },
                                      "computed": false
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": [],
                            "trailingComments": null
                          },
                          "alternate": null,
                          "trailingComments": [
                            {
                              "type": "CommentLine",
                              "value": "If a user pass a where on the options through options, make an \"and\" with the current throughWhere",
                              "start": 14411,
                              "end": 14511,
                              "loc": {
                                "start": {
                                  "line": 400,
                                  "column": 6
                                },
                                "end": {
                                  "line": 400,
                                  "column": 106
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "IfStatement",
                          "start": 14518,
                          "end": 14663,
                          "loc": {
                            "start": {
                              "line": 401,
                              "column": 6
                            },
                            "end": {
                              "line": 405,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "LogicalExpression",
                            "start": 14522,
                            "end": 14562,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 10
                              },
                              "end": {
                                "line": 401,
                                "column": 50
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 14522,
                              "end": 14537,
                              "loc": {
                                "start": {
                                  "line": 401,
                                  "column": 10
                                },
                                "end": {
                                  "line": 401,
                                  "column": 25
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14522,
                                "end": 14529,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 10
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 17
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14530,
                                "end": 14537,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 18
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 25
                                  },
                                  "identifierName": "through"
                                },
                                "name": "through"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "operator": "&&",
                            "right": {
                              "type": "MemberExpression",
                              "start": 14541,
                              "end": 14562,
                              "loc": {
                                "start": {
                                  "line": 401,
                                  "column": 29
                                },
                                "end": {
                                  "line": 401,
                                  "column": 50
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 14541,
                                "end": 14556,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 44
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14541,
                                  "end": 14548,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 36
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14549,
                                  "end": 14556,
                                  "loc": {
                                    "start": {
                                      "line": 401,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 401,
                                      "column": 44
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14557,
                                "end": 14562,
                                "loc": {
                                  "start": {
                                    "line": 401,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 401,
                                    "column": 50
                                  },
                                  "identifierName": "where"
                                },
                                "name": "where"
                              },
                              "computed": false
                            },
                            "leadingComments": null
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 14564,
                            "end": 14663,
                            "loc": {
                              "start": {
                                "line": 401,
                                "column": 52
                              },
                              "end": {
                                "line": 405,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 14574,
                                "end": 14655,
                                "loc": {
                                  "start": {
                                    "line": 402,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 404,
                                    "column": 10
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 14574,
                                  "end": 14654,
                                  "loc": {
                                    "start": {
                                      "line": 402,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 404,
                                      "column": 9
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 14574,
                                    "end": 14586,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 402,
                                        "column": 20
                                      },
                                      "identifierName": "throughWhere"
                                    },
                                    "name": "throughWhere"
                                  },
                                  "right": {
                                    "type": "ObjectExpression",
                                    "start": 14589,
                                    "end": 14654,
                                    "loc": {
                                      "start": {
                                        "line": 402,
                                        "column": 23
                                      },
                                      "end": {
                                        "line": 404,
                                        "column": 9
                                      }
                                    },
                                    "properties": [
                                      {
                                        "type": "ObjectProperty",
                                        "start": 14601,
                                        "end": 14644,
                                        "loc": {
                                          "start": {
                                            "line": 403,
                                            "column": 10
                                          },
                                          "end": {
                                            "line": 403,
                                            "column": 53
                                          }
                                        },
                                        "method": false,
                                        "shorthand": false,
                                        "computed": false,
                                        "key": {
                                          "type": "Identifier",
                                          "start": 14601,
                                          "end": 14605,
                                          "loc": {
                                            "start": {
                                              "line": 403,
                                              "column": 10
                                            },
                                            "end": {
                                              "line": 403,
                                              "column": 14
                                            },
                                            "identifierName": "$and"
                                          },
                                          "name": "$and"
                                        },
                                        "value": {
                                          "type": "ArrayExpression",
                                          "start": 14607,
                                          "end": 14644,
                                          "loc": {
                                            "start": {
                                              "line": 403,
                                              "column": 16
                                            },
                                            "end": {
                                              "line": 403,
                                              "column": 53
                                            }
                                          },
                                          "elements": [
                                            {
                                              "type": "Identifier",
                                              "start": 14608,
                                              "end": 14620,
                                              "loc": {
                                                "start": {
                                                  "line": 403,
                                                  "column": 17
                                                },
                                                "end": {
                                                  "line": 403,
                                                  "column": 29
                                                },
                                                "identifierName": "throughWhere"
                                              },
                                              "name": "throughWhere"
                                            },
                                            {
                                              "type": "MemberExpression",
                                              "start": 14622,
                                              "end": 14643,
                                              "loc": {
                                                "start": {
                                                  "line": 403,
                                                  "column": 31
                                                },
                                                "end": {
                                                  "line": 403,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 14622,
                                                "end": 14637,
                                                "loc": {
                                                  "start": {
                                                    "line": 403,
                                                    "column": 31
                                                  },
                                                  "end": {
                                                    "line": 403,
                                                    "column": 46
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 14622,
                                                  "end": 14629,
                                                  "loc": {
                                                    "start": {
                                                      "line": 403,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 403,
                                                      "column": 38
                                                    },
                                                    "identifierName": "options"
                                                  },
                                                  "name": "options"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 14630,
                                                  "end": 14637,
                                                  "loc": {
                                                    "start": {
                                                      "line": 403,
                                                      "column": 39
                                                    },
                                                    "end": {
                                                      "line": 403,
                                                      "column": 46
                                                    },
                                                    "identifierName": "through"
                                                  },
                                                  "name": "through"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 14638,
                                                "end": 14643,
                                                "loc": {
                                                  "start": {
                                                    "line": 403,
                                                    "column": 47
                                                  },
                                                  "end": {
                                                    "line": 403,
                                                    "column": 52
                                                  },
                                                  "identifierName": "where"
                                                },
                                                "name": "where"
                                              },
                                              "computed": false
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null,
                          "leadingComments": [
                            {
                              "type": "CommentLine",
                              "value": "If a user pass a where on the options through options, make an \"and\" with the current throughWhere",
                              "start": 14411,
                              "end": 14511,
                              "loc": {
                                "start": {
                                  "line": 400,
                                  "column": 6
                                },
                                "end": {
                                  "line": 400,
                                  "column": 106
                                }
                              }
                            }
                          ]
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 14671,
                          "end": 14711,
                          "loc": {
                            "start": {
                              "line": 407,
                              "column": 6
                            },
                            "end": {
                              "line": 407,
                              "column": 46
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 14671,
                            "end": 14710,
                            "loc": {
                              "start": {
                                "line": 407,
                                "column": 6
                              },
                              "end": {
                                "line": 407,
                                "column": 45
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "MemberExpression",
                              "start": 14671,
                              "end": 14686,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 6
                                },
                                "end": {
                                  "line": 407,
                                  "column": 21
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14671,
                                "end": 14678,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 13
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14679,
                                "end": 14686,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 21
                                  },
                                  "identifierName": "include"
                                },
                                "name": "include"
                              },
                              "computed": false
                            },
                            "right": {
                              "type": "LogicalExpression",
                              "start": 14689,
                              "end": 14710,
                              "loc": {
                                "start": {
                                  "line": 407,
                                  "column": 24
                                },
                                "end": {
                                  "line": 407,
                                  "column": 45
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 14689,
                                "end": 14704,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 24
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 39
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14689,
                                  "end": 14696,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 31
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14697,
                                  "end": 14704,
                                  "loc": {
                                    "start": {
                                      "line": 407,
                                      "column": 32
                                    },
                                    "end": {
                                      "line": 407,
                                      "column": 39
                                    },
                                    "identifierName": "include"
                                  },
                                  "name": "include"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "ArrayExpression",
                                "start": 14708,
                                "end": 14710,
                                "loc": {
                                  "start": {
                                    "line": 407,
                                    "column": 43
                                  },
                                  "end": {
                                    "line": 407,
                                    "column": 45
                                  }
                                },
                                "elements": []
                              }
                            }
                          }
                        },
                        {
                          "type": "ExpressionStatement",
                          "start": 14718,
                          "end": 14899,
                          "loc": {
                            "start": {
                              "line": 408,
                              "column": 6
                            },
                            "end": {
                              "line": 413,
                              "column": 9
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 14718,
                            "end": 14898,
                            "loc": {
                              "start": {
                                "line": 408,
                                "column": 6
                              },
                              "end": {
                                "line": 413,
                                "column": 8
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 14718,
                              "end": 14738,
                              "loc": {
                                "start": {
                                  "line": 408,
                                  "column": 6
                                },
                                "end": {
                                  "line": 408,
                                  "column": 26
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 14718,
                                "end": 14733,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 21
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 14718,
                                  "end": 14725,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 13
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 14726,
                                  "end": 14733,
                                  "loc": {
                                    "start": {
                                      "line": 408,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 408,
                                      "column": 21
                                    },
                                    "identifierName": "include"
                                  },
                                  "name": "include"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 14734,
                                "end": 14738,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 22
                                  },
                                  "end": {
                                    "line": 408,
                                    "column": 26
                                  },
                                  "identifierName": "push"
                                },
                                "name": "push"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "ObjectExpression",
                                "start": 14739,
                                "end": 14897,
                                "loc": {
                                  "start": {
                                    "line": 408,
                                    "column": 27
                                  },
                                  "end": {
                                    "line": 413,
                                    "column": 7
                                  }
                                },
                                "properties": [
                                  {
                                    "type": "ObjectProperty",
                                    "start": 14749,
                                    "end": 14787,
                                    "loc": {
                                      "start": {
                                        "line": 409,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 409,
                                        "column": 46
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 14749,
                                      "end": 14760,
                                      "loc": {
                                        "start": {
                                          "line": 409,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 409,
                                          "column": 19
                                        },
                                        "identifierName": "association"
                                      },
                                      "name": "association"
                                    },
                                    "value": {
                                      "type": "MemberExpression",
                                      "start": 14762,
                                      "end": 14787,
                                      "loc": {
                                        "start": {
                                          "line": 409,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 409,
                                          "column": 46
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 14762,
                                        "end": 14773,
                                        "loc": {
                                          "start": {
                                            "line": 409,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 409,
                                            "column": 32
                                          },
                                          "identifierName": "association"
                                        },
                                        "name": "association"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 14774,
                                        "end": 14787,
                                        "loc": {
                                          "start": {
                                            "line": 409,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 409,
                                            "column": 46
                                          },
                                          "identifierName": "oneFromTarget"
                                        },
                                        "name": "oneFromTarget"
                                      },
                                      "computed": false
                                    }
                                  },
                                  {
                                    "type": "ObjectProperty",
                                    "start": 14797,
                                    "end": 14836,
                                    "loc": {
                                      "start": {
                                        "line": 410,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 410,
                                        "column": 47
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 14797,
                                      "end": 14807,
                                      "loc": {
                                        "start": {
                                          "line": 410,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 410,
                                          "column": 18
                                        },
                                        "identifierName": "attributes"
                                      },
                                      "name": "attributes"
                                    },
                                    "value": {
                                      "type": "MemberExpression",
                                      "start": 14809,
                                      "end": 14836,
                                      "loc": {
                                        "start": {
                                          "line": 410,
                                          "column": 20
                                        },
                                        "end": {
                                          "line": 410,
                                          "column": 47
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 14809,
                                        "end": 14816,
                                        "loc": {
                                          "start": {
                                            "line": 410,
                                            "column": 20
                                          },
                                          "end": {
                                            "line": 410,
                                            "column": 27
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 14817,
                                        "end": 14836,
                                        "loc": {
                                          "start": {
                                            "line": 410,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 410,
                                            "column": 47
                                          },
                                          "identifierName": "joinTableAttributes"
                                        },
                                        "name": "joinTableAttributes"
                                      },
                                      "computed": false
                                    }
                                  },
                                  {
                                    "type": "ObjectProperty",
                                    "start": 14846,
                                    "end": 14860,
                                    "loc": {
                                      "start": {
                                        "line": 411,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 411,
                                        "column": 22
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 14846,
                                      "end": 14854,
                                      "loc": {
                                        "start": {
                                          "line": 411,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 411,
                                          "column": 16
                                        },
                                        "identifierName": "required"
                                      },
                                      "name": "required"
                                    },
                                    "value": {
                                      "type": "BooleanLiteral",
                                      "start": 14856,
                                      "end": 14860,
                                      "loc": {
                                        "start": {
                                          "line": 411,
                                          "column": 18
                                        },
                                        "end": {
                                          "line": 411,
                                          "column": 22
                                        }
                                      },
                                      "value": true
                                    }
                                  },
                                  {
                                    "type": "ObjectProperty",
                                    "start": 14870,
                                    "end": 14889,
                                    "loc": {
                                      "start": {
                                        "line": 412,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 412,
                                        "column": 27
                                      }
                                    },
                                    "method": false,
                                    "shorthand": false,
                                    "computed": false,
                                    "key": {
                                      "type": "Identifier",
                                      "start": 14870,
                                      "end": 14875,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 13
                                        },
                                        "identifierName": "where"
                                      },
                                      "name": "where"
                                    },
                                    "value": {
                                      "type": "Identifier",
                                      "start": 14877,
                                      "end": 14889,
                                      "loc": {
                                        "start": {
                                          "line": 412,
                                          "column": 15
                                        },
                                        "end": {
                                          "line": 412,
                                          "column": 27
                                        },
                                        "identifierName": "throughWhere"
                                      },
                                      "name": "throughWhere"
                                    }
                                  }
                                ]
                              }
                            ]
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 14911,
                    "end": 14942,
                    "loc": {
                      "start": {
                        "line": 416,
                        "column": 4
                      },
                      "end": {
                        "line": 416,
                        "column": 35
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 14915,
                        "end": 14941,
                        "loc": {
                          "start": {
                            "line": 416,
                            "column": 8
                          },
                          "end": {
                            "line": 416,
                            "column": 34
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 14915,
                          "end": 14920,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 8
                            },
                            "end": {
                              "line": 416,
                              "column": 13
                            },
                            "identifierName": "model"
                          },
                          "name": "model"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 14923,
                          "end": 14941,
                          "loc": {
                            "start": {
                              "line": 416,
                              "column": 16
                            },
                            "end": {
                              "line": 416,
                              "column": 34
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 14923,
                            "end": 14934,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 16
                              },
                              "end": {
                                "line": 416,
                                "column": 27
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 14935,
                            "end": 14941,
                            "loc": {
                              "start": {
                                "line": 416,
                                "column": 28
                              },
                              "end": {
                                "line": 416,
                                "column": 34
                              },
                              "identifierName": "target"
                            },
                            "name": "target"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "let"
                  },
                  {
                    "type": "IfStatement",
                    "start": 14947,
                    "end": 15120,
                    "loc": {
                      "start": {
                        "line": 417,
                        "column": 4
                      },
                      "end": {
                        "line": 423,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 14951,
                      "end": 14982,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 8
                        },
                        "end": {
                          "line": 417,
                          "column": 39
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 14951,
                        "end": 14973,
                        "loc": {
                          "start": {
                            "line": 417,
                            "column": 8
                          },
                          "end": {
                            "line": 417,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 14951,
                          "end": 14958,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 8
                            },
                            "end": {
                              "line": 417,
                              "column": 15
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 14959,
                          "end": 14973,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 16
                            },
                            "end": {
                              "line": 417,
                              "column": 30
                            },
                            "identifierName": "hasOwnProperty"
                          },
                          "name": "hasOwnProperty"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "StringLiteral",
                          "start": 14974,
                          "end": 14981,
                          "loc": {
                            "start": {
                              "line": 417,
                              "column": 31
                            },
                            "end": {
                              "line": 417,
                              "column": 38
                            }
                          },
                          "extra": {
                            "rawValue": "scope",
                            "raw": "'scope'"
                          },
                          "value": "scope"
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 14984,
                      "end": 15120,
                      "loc": {
                        "start": {
                          "line": 417,
                          "column": 41
                        },
                        "end": {
                          "line": 423,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "IfStatement",
                          "start": 14992,
                          "end": 15114,
                          "loc": {
                            "start": {
                              "line": 418,
                              "column": 6
                            },
                            "end": {
                              "line": 422,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "UnaryExpression",
                            "start": 14996,
                            "end": 15010,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 10
                              },
                              "end": {
                                "line": 418,
                                "column": 24
                              }
                            },
                            "operator": "!",
                            "prefix": true,
                            "argument": {
                              "type": "MemberExpression",
                              "start": 14997,
                              "end": 15010,
                              "loc": {
                                "start": {
                                  "line": 418,
                                  "column": 11
                                },
                                "end": {
                                  "line": 418,
                                  "column": 24
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 14997,
                                "end": 15004,
                                "loc": {
                                  "start": {
                                    "line": 418,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 418,
                                    "column": 18
                                  },
                                  "identifierName": "options"
                                },
                                "name": "options"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 15005,
                                "end": 15010,
                                "loc": {
                                  "start": {
                                    "line": 418,
                                    "column": 19
                                  },
                                  "end": {
                                    "line": 418,
                                    "column": 24
                                  },
                                  "identifierName": "scope"
                                },
                                "name": "scope"
                              },
                              "computed": false
                            },
                            "extra": {
                              "parenthesizedArgument": false
                            }
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 15012,
                            "end": 15055,
                            "loc": {
                              "start": {
                                "line": 418,
                                "column": 26
                              },
                              "end": {
                                "line": 420,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 15022,
                                "end": 15047,
                                "loc": {
                                  "start": {
                                    "line": 419,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 419,
                                    "column": 33
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 15022,
                                  "end": 15046,
                                  "loc": {
                                    "start": {
                                      "line": 419,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 419,
                                      "column": 32
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15022,
                                    "end": 15027,
                                    "loc": {
                                      "start": {
                                        "line": 419,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 419,
                                        "column": 13
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 15030,
                                    "end": 15046,
                                    "loc": {
                                      "start": {
                                        "line": 419,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 419,
                                        "column": 32
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15030,
                                      "end": 15044,
                                      "loc": {
                                        "start": {
                                          "line": 419,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 419,
                                          "column": 30
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15030,
                                        "end": 15035,
                                        "loc": {
                                          "start": {
                                            "line": 419,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 419,
                                            "column": 21
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15036,
                                        "end": 15044,
                                        "loc": {
                                          "start": {
                                            "line": 419,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 419,
                                            "column": 30
                                          },
                                          "identifierName": "unscoped"
                                        },
                                        "name": "unscoped"
                                      },
                                      "computed": false
                                    },
                                    "arguments": []
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": {
                            "type": "BlockStatement",
                            "start": 15061,
                            "end": 15114,
                            "loc": {
                              "start": {
                                "line": 420,
                                "column": 13
                              },
                              "end": {
                                "line": 422,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 15071,
                                "end": 15106,
                                "loc": {
                                  "start": {
                                    "line": 421,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 421,
                                    "column": 43
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 15071,
                                  "end": 15105,
                                  "loc": {
                                    "start": {
                                      "line": 421,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 421,
                                      "column": 42
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 15071,
                                    "end": 15076,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 13
                                      },
                                      "identifierName": "model"
                                    },
                                    "name": "model"
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 15079,
                                    "end": 15105,
                                    "loc": {
                                      "start": {
                                        "line": 421,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 421,
                                        "column": 42
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15079,
                                      "end": 15090,
                                      "loc": {
                                        "start": {
                                          "line": 421,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 421,
                                          "column": 27
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15079,
                                        "end": 15084,
                                        "loc": {
                                          "start": {
                                            "line": 421,
                                            "column": 16
                                          },
                                          "end": {
                                            "line": 421,
                                            "column": 21
                                          },
                                          "identifierName": "model"
                                        },
                                        "name": "model"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15085,
                                        "end": 15090,
                                        "loc": {
                                          "start": {
                                            "line": 421,
                                            "column": 22
                                          },
                                          "end": {
                                            "line": 421,
                                            "column": 27
                                          },
                                          "identifierName": "scope"
                                        },
                                        "name": "scope"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "MemberExpression",
                                        "start": 15091,
                                        "end": 15104,
                                        "loc": {
                                          "start": {
                                            "line": 421,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 421,
                                            "column": 41
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 15091,
                                          "end": 15098,
                                          "loc": {
                                            "start": {
                                              "line": 421,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 421,
                                              "column": 35
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 15099,
                                          "end": 15104,
                                          "loc": {
                                            "start": {
                                              "line": 421,
                                              "column": 36
                                            },
                                            "end": {
                                              "line": 421,
                                              "column": 41
                                            },
                                            "identifierName": "scope"
                                          },
                                          "name": "scope"
                                        },
                                        "computed": false
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 15126,
                    "end": 15240,
                    "loc": {
                      "start": {
                        "line": 425,
                        "column": 4
                      },
                      "end": {
                        "line": 427,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 15130,
                      "end": 15162,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 8
                        },
                        "end": {
                          "line": 425,
                          "column": 40
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 15130,
                        "end": 15152,
                        "loc": {
                          "start": {
                            "line": 425,
                            "column": 8
                          },
                          "end": {
                            "line": 425,
                            "column": 30
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 15130,
                          "end": 15137,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 8
                            },
                            "end": {
                              "line": 425,
                              "column": 15
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15138,
                          "end": 15152,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 16
                            },
                            "end": {
                              "line": 425,
                              "column": 30
                            },
                            "identifierName": "hasOwnProperty"
                          },
                          "name": "hasOwnProperty"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "StringLiteral",
                          "start": 15153,
                          "end": 15161,
                          "loc": {
                            "start": {
                              "line": 425,
                              "column": 31
                            },
                            "end": {
                              "line": 425,
                              "column": 39
                            }
                          },
                          "extra": {
                            "rawValue": "schema",
                            "raw": "'schema'"
                          },
                          "value": "schema"
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 15164,
                      "end": 15240,
                      "loc": {
                        "start": {
                          "line": 425,
                          "column": 42
                        },
                        "end": {
                          "line": 427,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 15172,
                          "end": 15234,
                          "loc": {
                            "start": {
                              "line": 426,
                              "column": 6
                            },
                            "end": {
                              "line": 426,
                              "column": 68
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 15172,
                            "end": 15233,
                            "loc": {
                              "start": {
                                "line": 426,
                                "column": 6
                              },
                              "end": {
                                "line": 426,
                                "column": 67
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 15172,
                              "end": 15177,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 6
                                },
                                "end": {
                                  "line": 426,
                                  "column": 11
                                },
                                "identifierName": "model"
                              },
                              "name": "model"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 15180,
                              "end": 15233,
                              "loc": {
                                "start": {
                                  "line": 426,
                                  "column": 14
                                },
                                "end": {
                                  "line": 426,
                                  "column": 67
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 15180,
                                "end": 15192,
                                "loc": {
                                  "start": {
                                    "line": 426,
                                    "column": 14
                                  },
                                  "end": {
                                    "line": 426,
                                    "column": 26
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 15180,
                                  "end": 15185,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 14
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 19
                                    },
                                    "identifierName": "model"
                                  },
                                  "name": "model"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 15186,
                                  "end": 15192,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 20
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 26
                                    },
                                    "identifierName": "schema"
                                  },
                                  "name": "schema"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 15193,
                                  "end": 15207,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 27
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 41
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15193,
                                    "end": 15200,
                                    "loc": {
                                      "start": {
                                        "line": 426,
                                        "column": 27
                                      },
                                      "end": {
                                        "line": 426,
                                        "column": 34
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15201,
                                    "end": 15207,
                                    "loc": {
                                      "start": {
                                        "line": 426,
                                        "column": 35
                                      },
                                      "end": {
                                        "line": 426,
                                        "column": 41
                                      },
                                      "identifierName": "schema"
                                    },
                                    "name": "schema"
                                  },
                                  "computed": false
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 15209,
                                  "end": 15232,
                                  "loc": {
                                    "start": {
                                      "line": 426,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 426,
                                      "column": 66
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15209,
                                    "end": 15216,
                                    "loc": {
                                      "start": {
                                        "line": 426,
                                        "column": 43
                                      },
                                      "end": {
                                        "line": 426,
                                        "column": 50
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15217,
                                    "end": 15232,
                                    "loc": {
                                      "start": {
                                        "line": 426,
                                        "column": 51
                                      },
                                      "end": {
                                        "line": 426,
                                        "column": 66
                                      },
                                      "identifierName": "schemaDelimiter"
                                    },
                                    "name": "schemaDelimiter"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 15246,
                    "end": 15276,
                    "loc": {
                      "start": {
                        "line": 429,
                        "column": 4
                      },
                      "end": {
                        "line": 429,
                        "column": 34
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 15253,
                      "end": 15275,
                      "loc": {
                        "start": {
                          "line": 429,
                          "column": 11
                        },
                        "end": {
                          "line": 429,
                          "column": 33
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 15253,
                        "end": 15266,
                        "loc": {
                          "start": {
                            "line": 429,
                            "column": 11
                          },
                          "end": {
                            "line": 429,
                            "column": 24
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 15253,
                          "end": 15258,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 11
                            },
                            "end": {
                              "line": 429,
                              "column": 16
                            },
                            "identifierName": "model"
                          },
                          "name": "model"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15259,
                          "end": 15266,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 17
                            },
                            "end": {
                              "line": 429,
                              "column": 24
                            },
                            "identifierName": "findAll"
                          },
                          "name": "findAll"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 15267,
                          "end": 15274,
                          "loc": {
                            "start": {
                              "line": 429,
                              "column": 25
                            },
                            "end": {
                              "line": 429,
                              "column": 32
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Get everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @param {String} [options.schema] Apply a schema on the related model\n   * @see {@link Model.findAll}  for a full explanation of options\n   * @return {Promise<Array<Model>>}\n   ",
                  "start": 13254,
                  "end": 13780,
                  "loc": {
                    "start": {
                      "line": 363,
                      "column": 2
                    },
                    "end": {
                      "line": 372,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Count everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @return {Promise<Integer>}\n   ",
                  "start": 15284,
                  "end": 15666,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 2
                    },
                    "end": {
                      "line": 439,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 15669,
              "end": 16178,
              "loc": {
                "start": {
                  "line": 440,
                  "column": 2
                },
                "end": {
                  "line": 454,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 15669,
                "end": 15674,
                "loc": {
                  "start": {
                    "line": 440,
                    "column": 2
                  },
                  "end": {
                    "line": 440,
                    "column": 7
                  },
                  "identifierName": "count"
                },
                "name": "count",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 15675,
                  "end": 15683,
                  "loc": {
                    "start": {
                      "line": 440,
                      "column": 8
                    },
                    "end": {
                      "line": 440,
                      "column": 16
                    },
                    "identifierName": "instance"
                  },
                  "name": "instance"
                },
                {
                  "type": "Identifier",
                  "start": 15685,
                  "end": 15692,
                  "loc": {
                    "start": {
                      "line": 440,
                      "column": 18
                    },
                    "end": {
                      "line": 440,
                      "column": 25
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 15694,
                "end": 16178,
                "loc": {
                  "start": {
                    "line": 440,
                    "column": 27
                  },
                  "end": {
                    "line": 454,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 15700,
                    "end": 15725,
                    "loc": {
                      "start": {
                        "line": 441,
                        "column": 4
                      },
                      "end": {
                        "line": 441,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 15706,
                        "end": 15724,
                        "loc": {
                          "start": {
                            "line": 441,
                            "column": 10
                          },
                          "end": {
                            "line": 441,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 15706,
                          "end": 15717,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 10
                            },
                            "end": {
                              "line": 441,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 15720,
                          "end": 15724,
                          "loc": {
                            "start": {
                              "line": 441,
                              "column": 24
                            },
                            "end": {
                              "line": 441,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 15730,
                    "end": 15763,
                    "loc": {
                      "start": {
                        "line": 442,
                        "column": 4
                      },
                      "end": {
                        "line": 442,
                        "column": 37
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 15736,
                        "end": 15762,
                        "loc": {
                          "start": {
                            "line": 442,
                            "column": 10
                          },
                          "end": {
                            "line": 442,
                            "column": 36
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 15736,
                          "end": 15741,
                          "loc": {
                            "start": {
                              "line": 442,
                              "column": 10
                            },
                            "end": {
                              "line": 442,
                              "column": 15
                            },
                            "identifierName": "model"
                          },
                          "name": "model"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 15744,
                          "end": 15762,
                          "loc": {
                            "start": {
                              "line": 442,
                              "column": 18
                            },
                            "end": {
                              "line": 442,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 15744,
                            "end": 15755,
                            "loc": {
                              "start": {
                                "line": 442,
                                "column": 18
                              },
                              "end": {
                                "line": 442,
                                "column": 29
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15756,
                            "end": 15762,
                            "loc": {
                              "start": {
                                "line": 442,
                                "column": 30
                              },
                              "end": {
                                "line": 442,
                                "column": 36
                              },
                              "identifierName": "target"
                            },
                            "name": "target"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 15768,
                    "end": 15802,
                    "loc": {
                      "start": {
                        "line": 443,
                        "column": 4
                      },
                      "end": {
                        "line": 443,
                        "column": 38
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 15774,
                        "end": 15801,
                        "loc": {
                          "start": {
                            "line": 443,
                            "column": 10
                          },
                          "end": {
                            "line": 443,
                            "column": 37
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 15774,
                          "end": 15783,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 10
                            },
                            "end": {
                              "line": 443,
                              "column": 19
                            },
                            "identifierName": "sequelize"
                          },
                          "name": "sequelize"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 15786,
                          "end": 15801,
                          "loc": {
                            "start": {
                              "line": 443,
                              "column": 22
                            },
                            "end": {
                              "line": 443,
                              "column": 37
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 15786,
                            "end": 15791,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 22
                              },
                              "end": {
                                "line": 443,
                                "column": 27
                              },
                              "identifierName": "model"
                            },
                            "name": "model"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15792,
                            "end": 15801,
                            "loc": {
                              "start": {
                                "line": 443,
                                "column": 28
                              },
                              "end": {
                                "line": 443,
                                "column": 37
                              },
                              "identifierName": "sequelize"
                            },
                            "name": "sequelize"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 15808,
                    "end": 15843,
                    "loc": {
                      "start": {
                        "line": 445,
                        "column": 4
                      },
                      "end": {
                        "line": 445,
                        "column": 39
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 15808,
                      "end": 15842,
                      "loc": {
                        "start": {
                          "line": 445,
                          "column": 4
                        },
                        "end": {
                          "line": 445,
                          "column": 38
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 15808,
                        "end": 15815,
                        "loc": {
                          "start": {
                            "line": 445,
                            "column": 4
                          },
                          "end": {
                            "line": 445,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 15818,
                        "end": 15842,
                        "loc": {
                          "start": {
                            "line": 445,
                            "column": 14
                          },
                          "end": {
                            "line": 445,
                            "column": 38
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 15818,
                          "end": 15833,
                          "loc": {
                            "start": {
                              "line": 445,
                              "column": 14
                            },
                            "end": {
                              "line": 445,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 15818,
                            "end": 15823,
                            "loc": {
                              "start": {
                                "line": 445,
                                "column": 14
                              },
                              "end": {
                                "line": 445,
                                "column": 19
                              },
                              "identifierName": "Utils"
                            },
                            "name": "Utils"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 15824,
                            "end": 15833,
                            "loc": {
                              "start": {
                                "line": 445,
                                "column": 20
                              },
                              "end": {
                                "line": 445,
                                "column": 29
                              },
                              "identifierName": "cloneDeep"
                            },
                            "name": "cloneDeep"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 15834,
                            "end": 15841,
                            "loc": {
                              "start": {
                                "line": 445,
                                "column": 30
                              },
                              "end": {
                                "line": 445,
                                "column": 37
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 15848,
                    "end": 15995,
                    "loc": {
                      "start": {
                        "line": 446,
                        "column": 4
                      },
                      "end": {
                        "line": 448,
                        "column": 6
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 15848,
                      "end": 15994,
                      "loc": {
                        "start": {
                          "line": 446,
                          "column": 4
                        },
                        "end": {
                          "line": 448,
                          "column": 5
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 15848,
                        "end": 15866,
                        "loc": {
                          "start": {
                            "line": 446,
                            "column": 4
                          },
                          "end": {
                            "line": 446,
                            "column": 22
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 15848,
                          "end": 15855,
                          "loc": {
                            "start": {
                              "line": 446,
                              "column": 4
                            },
                            "end": {
                              "line": 446,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 15856,
                          "end": 15866,
                          "loc": {
                            "start": {
                              "line": 446,
                              "column": 12
                            },
                            "end": {
                              "line": 446,
                              "column": 22
                            },
                            "identifierName": "attributes"
                          },
                          "name": "attributes"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "ArrayExpression",
                        "start": 15869,
                        "end": 15994,
                        "loc": {
                          "start": {
                            "line": 446,
                            "column": 25
                          },
                          "end": {
                            "line": 448,
                            "column": 5
                          }
                        },
                        "elements": [
                          {
                            "type": "ArrayExpression",
                            "start": 15877,
                            "end": 15988,
                            "loc": {
                              "start": {
                                "line": 447,
                                "column": 6
                              },
                              "end": {
                                "line": 447,
                                "column": 117
                              }
                            },
                            "elements": [
                              {
                                "type": "CallExpression",
                                "start": 15878,
                                "end": 15978,
                                "loc": {
                                  "start": {
                                    "line": 447,
                                    "column": 7
                                  },
                                  "end": {
                                    "line": 447,
                                    "column": 107
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 15878,
                                  "end": 15890,
                                  "loc": {
                                    "start": {
                                      "line": 447,
                                      "column": 7
                                    },
                                    "end": {
                                      "line": 447,
                                      "column": 19
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 15878,
                                    "end": 15887,
                                    "loc": {
                                      "start": {
                                        "line": 447,
                                        "column": 7
                                      },
                                      "end": {
                                        "line": 447,
                                        "column": 16
                                      },
                                      "identifierName": "sequelize"
                                    },
                                    "name": "sequelize"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 15888,
                                    "end": 15890,
                                    "loc": {
                                      "start": {
                                        "line": 447,
                                        "column": 17
                                      },
                                      "end": {
                                        "line": 447,
                                        "column": 19
                                      },
                                      "identifierName": "fn"
                                    },
                                    "name": "fn"
                                  },
                                  "computed": false
                                },
                                "arguments": [
                                  {
                                    "type": "StringLiteral",
                                    "start": 15891,
                                    "end": 15898,
                                    "loc": {
                                      "start": {
                                        "line": 447,
                                        "column": 20
                                      },
                                      "end": {
                                        "line": 447,
                                        "column": 27
                                      }
                                    },
                                    "extra": {
                                      "rawValue": "COUNT",
                                      "raw": "'COUNT'"
                                    },
                                    "value": "COUNT"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 15900,
                                    "end": 15977,
                                    "loc": {
                                      "start": {
                                        "line": 447,
                                        "column": 29
                                      },
                                      "end": {
                                        "line": 447,
                                        "column": 106
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 15900,
                                      "end": 15913,
                                      "loc": {
                                        "start": {
                                          "line": 447,
                                          "column": 29
                                        },
                                        "end": {
                                          "line": 447,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 15900,
                                        "end": 15909,
                                        "loc": {
                                          "start": {
                                            "line": 447,
                                            "column": 29
                                          },
                                          "end": {
                                            "line": 447,
                                            "column": 38
                                          },
                                          "identifierName": "sequelize"
                                        },
                                        "name": "sequelize"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 15910,
                                        "end": 15913,
                                        "loc": {
                                          "start": {
                                            "line": 447,
                                            "column": 39
                                          },
                                          "end": {
                                            "line": 447,
                                            "column": 42
                                          },
                                          "identifierName": "col"
                                        },
                                        "name": "col"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 15914,
                                        "end": 15976,
                                        "loc": {
                                          "start": {
                                            "line": 447,
                                            "column": 43
                                          },
                                          "end": {
                                            "line": 447,
                                            "column": 105
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 15914,
                                          "end": 15971,
                                          "loc": {
                                            "start": {
                                              "line": 447,
                                              "column": 43
                                            },
                                            "end": {
                                              "line": 447,
                                              "column": 100
                                            }
                                          },
                                          "object": {
                                            "type": "ArrayExpression",
                                            "start": 15914,
                                            "end": 15966,
                                            "loc": {
                                              "start": {
                                                "line": 447,
                                                "column": 43
                                              },
                                              "end": {
                                                "line": 447,
                                                "column": 95
                                              }
                                            },
                                            "elements": [
                                              {
                                                "type": "MemberExpression",
                                                "start": 15915,
                                                "end": 15938,
                                                "loc": {
                                                  "start": {
                                                    "line": 447,
                                                    "column": 44
                                                  },
                                                  "end": {
                                                    "line": 447,
                                                    "column": 67
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 15915,
                                                  "end": 15933,
                                                  "loc": {
                                                    "start": {
                                                      "line": 447,
                                                      "column": 44
                                                    },
                                                    "end": {
                                                      "line": 447,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 15915,
                                                    "end": 15926,
                                                    "loc": {
                                                      "start": {
                                                        "line": 447,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 447,
                                                        "column": 55
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 15927,
                                                    "end": 15933,
                                                    "loc": {
                                                      "start": {
                                                        "line": 447,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 447,
                                                        "column": 62
                                                      },
                                                      "identifierName": "target"
                                                    },
                                                    "name": "target"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 15934,
                                                  "end": 15938,
                                                  "loc": {
                                                    "start": {
                                                      "line": 447,
                                                      "column": 63
                                                    },
                                                    "end": {
                                                      "line": 447,
                                                      "column": 67
                                                    },
                                                    "identifierName": "name"
                                                  },
                                                  "name": "name"
                                                },
                                                "computed": false
                                              },
                                              {
                                                "type": "MemberExpression",
                                                "start": 15940,
                                                "end": 15965,
                                                "loc": {
                                                  "start": {
                                                    "line": 447,
                                                    "column": 69
                                                  },
                                                  "end": {
                                                    "line": 447,
                                                    "column": 94
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 15940,
                                                  "end": 15945,
                                                  "loc": {
                                                    "start": {
                                                      "line": 447,
                                                      "column": 69
                                                    },
                                                    "end": {
                                                      "line": 447,
                                                      "column": 74
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 15946,
                                                  "end": 15965,
                                                  "loc": {
                                                    "start": {
                                                      "line": 447,
                                                      "column": 75
                                                    },
                                                    "end": {
                                                      "line": 447,
                                                      "column": 94
                                                    },
                                                    "identifierName": "primaryKeyAttribute"
                                                  },
                                                  "name": "primaryKeyAttribute"
                                                },
                                                "computed": false
                                              }
                                            ]
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 15967,
                                            "end": 15971,
                                            "loc": {
                                              "start": {
                                                "line": 447,
                                                "column": 96
                                              },
                                              "end": {
                                                "line": 447,
                                                "column": 100
                                              },
                                              "identifierName": "join"
                                            },
                                            "name": "join"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "StringLiteral",
                                            "start": 15972,
                                            "end": 15975,
                                            "loc": {
                                              "start": {
                                                "line": 447,
                                                "column": 101
                                              },
                                              "end": {
                                                "line": 447,
                                                "column": 104
                                              }
                                            },
                                            "extra": {
                                              "rawValue": ".",
                                              "raw": "'.'"
                                            },
                                            "value": "."
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "type": "StringLiteral",
                                "start": 15980,
                                "end": 15987,
                                "loc": {
                                  "start": {
                                    "line": 447,
                                    "column": 109
                                  },
                                  "end": {
                                    "line": 447,
                                    "column": 116
                                  }
                                },
                                "extra": {
                                  "rawValue": "count",
                                  "raw": "'count'"
                                },
                                "value": "count"
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 16000,
                    "end": 16033,
                    "loc": {
                      "start": {
                        "line": 449,
                        "column": 4
                      },
                      "end": {
                        "line": 449,
                        "column": 37
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 16000,
                      "end": 16032,
                      "loc": {
                        "start": {
                          "line": 449,
                          "column": 4
                        },
                        "end": {
                          "line": 449,
                          "column": 36
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 16000,
                        "end": 16027,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 4
                          },
                          "end": {
                            "line": 449,
                            "column": 31
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 16000,
                          "end": 16007,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 4
                            },
                            "end": {
                              "line": 449,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16008,
                          "end": 16027,
                          "loc": {
                            "start": {
                              "line": 449,
                              "column": 12
                            },
                            "end": {
                              "line": 449,
                              "column": 31
                            },
                            "identifierName": "joinTableAttributes"
                          },
                          "name": "joinTableAttributes"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "ArrayExpression",
                        "start": 16030,
                        "end": 16032,
                        "loc": {
                          "start": {
                            "line": 449,
                            "column": 34
                          },
                          "end": {
                            "line": 449,
                            "column": 36
                          }
                        },
                        "elements": []
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 16038,
                    "end": 16057,
                    "loc": {
                      "start": {
                        "line": 450,
                        "column": 4
                      },
                      "end": {
                        "line": 450,
                        "column": 23
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 16038,
                      "end": 16056,
                      "loc": {
                        "start": {
                          "line": 450,
                          "column": 4
                        },
                        "end": {
                          "line": 450,
                          "column": 22
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 16038,
                        "end": 16049,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 4
                          },
                          "end": {
                            "line": 450,
                            "column": 15
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 16038,
                          "end": 16045,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 4
                            },
                            "end": {
                              "line": 450,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16046,
                          "end": 16049,
                          "loc": {
                            "start": {
                              "line": 450,
                              "column": 12
                            },
                            "end": {
                              "line": 450,
                              "column": 15
                            },
                            "identifierName": "raw"
                          },
                          "name": "raw"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 16052,
                        "end": 16056,
                        "loc": {
                          "start": {
                            "line": 450,
                            "column": 18
                          },
                          "end": {
                            "line": 450,
                            "column": 22
                          }
                        },
                        "value": true
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 16062,
                    "end": 16083,
                    "loc": {
                      "start": {
                        "line": 451,
                        "column": 4
                      },
                      "end": {
                        "line": 451,
                        "column": 25
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 16062,
                      "end": 16082,
                      "loc": {
                        "start": {
                          "line": 451,
                          "column": 4
                        },
                        "end": {
                          "line": 451,
                          "column": 24
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 16062,
                        "end": 16075,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 4
                          },
                          "end": {
                            "line": 451,
                            "column": 17
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 16062,
                          "end": 16069,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 4
                            },
                            "end": {
                              "line": 451,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16070,
                          "end": 16075,
                          "loc": {
                            "start": {
                              "line": 451,
                              "column": 12
                            },
                            "end": {
                              "line": 451,
                              "column": 17
                            },
                            "identifierName": "plain"
                          },
                          "name": "plain"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "BooleanLiteral",
                        "start": 16078,
                        "end": 16082,
                        "loc": {
                          "start": {
                            "line": 451,
                            "column": 20
                          },
                          "end": {
                            "line": 451,
                            "column": 24
                          }
                        },
                        "value": true
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 16089,
                    "end": 16174,
                    "loc": {
                      "start": {
                        "line": 453,
                        "column": 4
                      },
                      "end": {
                        "line": 453,
                        "column": 89
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 16096,
                      "end": 16173,
                      "loc": {
                        "start": {
                          "line": 453,
                          "column": 11
                        },
                        "end": {
                          "line": 453,
                          "column": 88
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 16096,
                        "end": 16135,
                        "loc": {
                          "start": {
                            "line": 453,
                            "column": 11
                          },
                          "end": {
                            "line": 453,
                            "column": 50
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 16096,
                          "end": 16130,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 11
                            },
                            "end": {
                              "line": 453,
                              "column": 45
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 16096,
                            "end": 16111,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 11
                              },
                              "end": {
                                "line": 453,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 16096,
                              "end": 16107,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 11
                                },
                                "end": {
                                  "line": 453,
                                  "column": 22
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 16108,
                              "end": 16111,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 23
                                },
                                "end": {
                                  "line": 453,
                                  "column": 26
                                },
                                "identifierName": "get"
                              },
                              "name": "get"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 16112,
                              "end": 16120,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 27
                                },
                                "end": {
                                  "line": 453,
                                  "column": 35
                                },
                                "identifierName": "instance"
                              },
                              "name": "instance"
                            },
                            {
                              "type": "Identifier",
                              "start": 16122,
                              "end": 16129,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 37
                                },
                                "end": {
                                  "line": 453,
                                  "column": 44
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16131,
                          "end": 16135,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 46
                            },
                            "end": {
                              "line": 453,
                              "column": 50
                            },
                            "identifierName": "then"
                          },
                          "name": "then"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 16136,
                          "end": 16172,
                          "loc": {
                            "start": {
                              "line": 453,
                              "column": 51
                            },
                            "end": {
                              "line": 453,
                              "column": 87
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 16136,
                              "end": 16142,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 51
                                },
                                "end": {
                                  "line": 453,
                                  "column": 57
                                },
                                "identifierName": "result"
                              },
                              "name": "result"
                            }
                          ],
                          "body": {
                            "type": "CallExpression",
                            "start": 16146,
                            "end": 16172,
                            "loc": {
                              "start": {
                                "line": 453,
                                "column": 61
                              },
                              "end": {
                                "line": 453,
                                "column": 87
                              }
                            },
                            "callee": {
                              "type": "Identifier",
                              "start": 16146,
                              "end": 16154,
                              "loc": {
                                "start": {
                                  "line": 453,
                                  "column": 61
                                },
                                "end": {
                                  "line": 453,
                                  "column": 69
                                },
                                "identifierName": "parseInt"
                              },
                              "name": "parseInt"
                            },
                            "arguments": [
                              {
                                "type": "MemberExpression",
                                "start": 16155,
                                "end": 16167,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 70
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 82
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 16155,
                                  "end": 16161,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 70
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 76
                                    },
                                    "identifierName": "result"
                                  },
                                  "name": "result"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 16162,
                                  "end": 16167,
                                  "loc": {
                                    "start": {
                                      "line": 453,
                                      "column": 77
                                    },
                                    "end": {
                                      "line": 453,
                                      "column": 82
                                    },
                                    "identifierName": "count"
                                  },
                                  "name": "count"
                                },
                                "computed": false
                              },
                              {
                                "type": "NumericLiteral",
                                "start": 16169,
                                "end": 16171,
                                "loc": {
                                  "start": {
                                    "line": 453,
                                    "column": 84
                                  },
                                  "end": {
                                    "line": 453,
                                    "column": 86
                                  }
                                },
                                "extra": {
                                  "rawValue": 10,
                                  "raw": "10"
                                },
                                "value": 10
                              }
                            ]
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Count everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @return {Promise<Integer>}\n   ",
                  "start": 15284,
                  "end": 15666,
                  "loc": {
                    "start": {
                      "line": 432,
                      "column": 2
                    },
                    "end": {
                      "line": 439,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Check if one or more instance(s) are associated with this. If a list of instances is passed, the function returns true if _all_ instances are associated\n   *\n   * @param {Model[]|Model|string[]|String|number[]|Number} [instance(s)] Can be an array of instances or their primary keys\n   * @param {Object} [options] Options passed to getAssociations\n   * @return {Promise<boolean>}\n   ",
                  "start": 16182,
                  "end": 16576,
                  "loc": {
                    "start": {
                      "line": 456,
                      "column": 2
                    },
                    "end": {
                      "line": 462,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 16579,
              "end": 17329,
              "loc": {
                "start": {
                  "line": 463,
                  "column": 2
                },
                "end": {
                  "line": 495,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 16579,
                "end": 16582,
                "loc": {
                  "start": {
                    "line": 463,
                    "column": 2
                  },
                  "end": {
                    "line": 463,
                    "column": 5
                  },
                  "identifierName": "has"
                },
                "name": "has",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 16583,
                  "end": 16597,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 6
                    },
                    "end": {
                      "line": 463,
                      "column": 20
                    },
                    "identifierName": "sourceInstance"
                  },
                  "name": "sourceInstance"
                },
                {
                  "type": "Identifier",
                  "start": 16599,
                  "end": 16608,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 22
                    },
                    "end": {
                      "line": 463,
                      "column": 31
                    },
                    "identifierName": "instances"
                  },
                  "name": "instances"
                },
                {
                  "type": "Identifier",
                  "start": 16610,
                  "end": 16617,
                  "loc": {
                    "start": {
                      "line": 463,
                      "column": 33
                    },
                    "end": {
                      "line": 463,
                      "column": 40
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 16619,
                "end": 17329,
                "loc": {
                  "start": {
                    "line": 463,
                    "column": 42
                  },
                  "end": {
                    "line": 495,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 16625,
                    "end": 16650,
                    "loc": {
                      "start": {
                        "line": 464,
                        "column": 4
                      },
                      "end": {
                        "line": 464,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 16631,
                        "end": 16649,
                        "loc": {
                          "start": {
                            "line": 464,
                            "column": 10
                          },
                          "end": {
                            "line": 464,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 16631,
                          "end": 16642,
                          "loc": {
                            "start": {
                              "line": 464,
                              "column": 10
                            },
                            "end": {
                              "line": 464,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 16645,
                          "end": 16649,
                          "loc": {
                            "start": {
                              "line": 464,
                              "column": 24
                            },
                            "end": {
                              "line": 464,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 16655,
                    "end": 16672,
                    "loc": {
                      "start": {
                        "line": 465,
                        "column": 4
                      },
                      "end": {
                        "line": 465,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 16661,
                        "end": 16671,
                        "loc": {
                          "start": {
                            "line": 465,
                            "column": 10
                          },
                          "end": {
                            "line": 465,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 16661,
                          "end": 16666,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 10
                            },
                            "end": {
                              "line": 465,
                              "column": 15
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 16669,
                          "end": 16671,
                          "loc": {
                            "start": {
                              "line": 465,
                              "column": 18
                            },
                            "end": {
                              "line": 465,
                              "column": 20
                            }
                          },
                          "properties": []
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "IfStatement",
                    "start": 16678,
                    "end": 16747,
                    "loc": {
                      "start": {
                        "line": 467,
                        "column": 4
                      },
                      "end": {
                        "line": 469,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 16682,
                      "end": 16707,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 8
                        },
                        "end": {
                          "line": 467,
                          "column": 33
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "CallExpression",
                        "start": 16683,
                        "end": 16707,
                        "loc": {
                          "start": {
                            "line": 467,
                            "column": 9
                          },
                          "end": {
                            "line": 467,
                            "column": 33
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16683,
                          "end": 16696,
                          "loc": {
                            "start": {
                              "line": 467,
                              "column": 9
                            },
                            "end": {
                              "line": 467,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16683,
                            "end": 16688,
                            "loc": {
                              "start": {
                                "line": 467,
                                "column": 9
                              },
                              "end": {
                                "line": 467,
                                "column": 14
                              },
                              "identifierName": "Array"
                            },
                            "name": "Array"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16689,
                            "end": 16696,
                            "loc": {
                              "start": {
                                "line": 467,
                                "column": 15
                              },
                              "end": {
                                "line": 467,
                                "column": 22
                              },
                              "identifierName": "isArray"
                            },
                            "name": "isArray"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 16697,
                            "end": 16706,
                            "loc": {
                              "start": {
                                "line": 467,
                                "column": 23
                              },
                              "end": {
                                "line": 467,
                                "column": 32
                              },
                              "identifierName": "instances"
                            },
                            "name": "instances"
                          }
                        ]
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 16709,
                      "end": 16747,
                      "loc": {
                        "start": {
                          "line": 467,
                          "column": 35
                        },
                        "end": {
                          "line": 469,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 16717,
                          "end": 16741,
                          "loc": {
                            "start": {
                              "line": 468,
                              "column": 6
                            },
                            "end": {
                              "line": 468,
                              "column": 30
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 16717,
                            "end": 16740,
                            "loc": {
                              "start": {
                                "line": 468,
                                "column": 6
                              },
                              "end": {
                                "line": 468,
                                "column": 29
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 16717,
                              "end": 16726,
                              "loc": {
                                "start": {
                                  "line": 468,
                                  "column": 6
                                },
                                "end": {
                                  "line": 468,
                                  "column": 15
                                },
                                "identifierName": "instances"
                              },
                              "name": "instances"
                            },
                            "right": {
                              "type": "ArrayExpression",
                              "start": 16729,
                              "end": 16740,
                              "loc": {
                                "start": {
                                  "line": 468,
                                  "column": 18
                                },
                                "end": {
                                  "line": 468,
                                  "column": 29
                                }
                              },
                              "elements": [
                                {
                                  "type": "Identifier",
                                  "start": 16730,
                                  "end": 16739,
                                  "loc": {
                                    "start": {
                                      "line": 468,
                                      "column": 19
                                    },
                                    "end": {
                                      "line": 468,
                                      "column": 28
                                    },
                                    "identifierName": "instances"
                                  },
                                  "name": "instances"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 16753,
                    "end": 16834,
                    "loc": {
                      "start": {
                        "line": 471,
                        "column": 4
                      },
                      "end": {
                        "line": 475,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 16753,
                      "end": 16833,
                      "loc": {
                        "start": {
                          "line": 471,
                          "column": 4
                        },
                        "end": {
                          "line": 475,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 16753,
                        "end": 16760,
                        "loc": {
                          "start": {
                            "line": 471,
                            "column": 4
                          },
                          "end": {
                            "line": 471,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 16763,
                        "end": 16833,
                        "loc": {
                          "start": {
                            "line": 471,
                            "column": 14
                          },
                          "end": {
                            "line": 475,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16763,
                          "end": 16771,
                          "loc": {
                            "start": {
                              "line": 471,
                              "column": 14
                            },
                            "end": {
                              "line": 471,
                              "column": 22
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16763,
                            "end": 16764,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 14
                              },
                              "end": {
                                "line": 471,
                                "column": 15
                              },
                              "identifierName": "_"
                            },
                            "name": "_"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16765,
                            "end": 16771,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 16
                              },
                              "end": {
                                "line": 471,
                                "column": 22
                              },
                              "identifierName": "assign"
                            },
                            "name": "assign"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ObjectExpression",
                            "start": 16772,
                            "end": 16795,
                            "loc": {
                              "start": {
                                "line": 471,
                                "column": 23
                              },
                              "end": {
                                "line": 473,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 16780,
                                "end": 16789,
                                "loc": {
                                  "start": {
                                    "line": 472,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 472,
                                    "column": 15
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 16780,
                                  "end": 16783,
                                  "loc": {
                                    "start": {
                                      "line": 472,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 472,
                                      "column": 9
                                    },
                                    "identifierName": "raw"
                                  },
                                  "name": "raw"
                                },
                                "value": {
                                  "type": "BooleanLiteral",
                                  "start": 16785,
                                  "end": 16789,
                                  "loc": {
                                    "start": {
                                      "line": 472,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 472,
                                      "column": 15
                                    }
                                  },
                                  "value": true
                                }
                              }
                            ]
                          },
                          {
                            "type": "Identifier",
                            "start": 16797,
                            "end": 16804,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 7
                              },
                              "end": {
                                "line": 473,
                                "column": 14
                              },
                              "identifierName": "options"
                            },
                            "name": "options"
                          },
                          {
                            "type": "ObjectExpression",
                            "start": 16806,
                            "end": 16832,
                            "loc": {
                              "start": {
                                "line": 473,
                                "column": 16
                              },
                              "end": {
                                "line": 475,
                                "column": 5
                              }
                            },
                            "properties": [
                              {
                                "type": "ObjectProperty",
                                "start": 16814,
                                "end": 16826,
                                "loc": {
                                  "start": {
                                    "line": 474,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 474,
                                    "column": 18
                                  }
                                },
                                "method": false,
                                "shorthand": false,
                                "computed": false,
                                "key": {
                                  "type": "Identifier",
                                  "start": 16814,
                                  "end": 16819,
                                  "loc": {
                                    "start": {
                                      "line": 474,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 474,
                                      "column": 11
                                    },
                                    "identifierName": "scope"
                                  },
                                  "name": "scope"
                                },
                                "value": {
                                  "type": "BooleanLiteral",
                                  "start": 16821,
                                  "end": 16826,
                                  "loc": {
                                    "start": {
                                      "line": 474,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 474,
                                      "column": 18
                                    }
                                  },
                                  "value": false
                                }
                              }
                            ]
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 16840,
                    "end": 17109,
                    "loc": {
                      "start": {
                        "line": 477,
                        "column": 4
                      },
                      "end": {
                        "line": 485,
                        "column": 7
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 16840,
                      "end": 17108,
                      "loc": {
                        "start": {
                          "line": 477,
                          "column": 4
                        },
                        "end": {
                          "line": 485,
                          "column": 6
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 16840,
                        "end": 16849,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 4
                          },
                          "end": {
                            "line": 477,
                            "column": 13
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 16840,
                          "end": 16845,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 4
                            },
                            "end": {
                              "line": 477,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 16846,
                          "end": 16849,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 10
                            },
                            "end": {
                              "line": 477,
                              "column": 13
                            },
                            "identifierName": "$or"
                          },
                          "name": "$or"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 16852,
                        "end": 17108,
                        "loc": {
                          "start": {
                            "line": 477,
                            "column": 16
                          },
                          "end": {
                            "line": 485,
                            "column": 6
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 16852,
                          "end": 16865,
                          "loc": {
                            "start": {
                              "line": 477,
                              "column": 16
                            },
                            "end": {
                              "line": 477,
                              "column": 29
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 16852,
                            "end": 16861,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 16
                              },
                              "end": {
                                "line": 477,
                                "column": 25
                              },
                              "identifierName": "instances"
                            },
                            "name": "instances"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 16862,
                            "end": 16865,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 26
                              },
                              "end": {
                                "line": 477,
                                "column": 29
                              },
                              "identifierName": "map"
                            },
                            "name": "map"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 16866,
                            "end": 17107,
                            "loc": {
                              "start": {
                                "line": 477,
                                "column": 30
                              },
                              "end": {
                                "line": 485,
                                "column": 5
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": false,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 16866,
                                "end": 16874,
                                "loc": {
                                  "start": {
                                    "line": 477,
                                    "column": 30
                                  },
                                  "end": {
                                    "line": 477,
                                    "column": 38
                                  },
                                  "identifierName": "instance"
                                },
                                "name": "instance"
                              }
                            ],
                            "body": {
                              "type": "BlockStatement",
                              "start": 16878,
                              "end": 17107,
                              "loc": {
                                "start": {
                                  "line": 477,
                                  "column": 42
                                },
                                "end": {
                                  "line": 485,
                                  "column": 5
                                }
                              },
                              "body": [
                                {
                                  "type": "IfStatement",
                                  "start": 16886,
                                  "end": 17101,
                                  "loc": {
                                    "start": {
                                      "line": 478,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 484,
                                      "column": 7
                                    }
                                  },
                                  "test": {
                                    "type": "BinaryExpression",
                                    "start": 16890,
                                    "end": 16928,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 478,
                                        "column": 48
                                      }
                                    },
                                    "left": {
                                      "type": "Identifier",
                                      "start": 16890,
                                      "end": 16898,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 18
                                        },
                                        "identifierName": "instance"
                                      },
                                      "name": "instance"
                                    },
                                    "operator": "instanceof",
                                    "right": {
                                      "type": "MemberExpression",
                                      "start": 16910,
                                      "end": 16928,
                                      "loc": {
                                        "start": {
                                          "line": 478,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 478,
                                          "column": 48
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 16910,
                                        "end": 16921,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 41
                                          },
                                          "identifierName": "association"
                                        },
                                        "name": "association"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 16922,
                                        "end": 16928,
                                        "loc": {
                                          "start": {
                                            "line": 478,
                                            "column": 42
                                          },
                                          "end": {
                                            "line": 478,
                                            "column": 48
                                          },
                                          "identifierName": "target"
                                        },
                                        "name": "target"
                                      },
                                      "computed": false
                                    }
                                  },
                                  "consequent": {
                                    "type": "BlockStatement",
                                    "start": 16930,
                                    "end": 16972,
                                    "loc": {
                                      "start": {
                                        "line": 478,
                                        "column": 50
                                      },
                                      "end": {
                                        "line": 480,
                                        "column": 7
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "ReturnStatement",
                                        "start": 16940,
                                        "end": 16964,
                                        "loc": {
                                          "start": {
                                            "line": 479,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 479,
                                            "column": 32
                                          }
                                        },
                                        "argument": {
                                          "type": "CallExpression",
                                          "start": 16947,
                                          "end": 16963,
                                          "loc": {
                                            "start": {
                                              "line": 479,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 479,
                                              "column": 31
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 16947,
                                            "end": 16961,
                                            "loc": {
                                              "start": {
                                                "line": 479,
                                                "column": 15
                                              },
                                              "end": {
                                                "line": 479,
                                                "column": 29
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 16947,
                                              "end": 16955,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 15
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 23
                                                },
                                                "identifierName": "instance"
                                              },
                                              "name": "instance"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 16956,
                                              "end": 16961,
                                              "loc": {
                                                "start": {
                                                  "line": 479,
                                                  "column": 24
                                                },
                                                "end": {
                                                  "line": 479,
                                                  "column": 29
                                                },
                                                "identifierName": "where"
                                              },
                                              "name": "where"
                                            },
                                            "computed": false
                                          },
                                          "arguments": []
                                        }
                                      }
                                    ],
                                    "directives": []
                                  },
                                  "alternate": {
                                    "type": "BlockStatement",
                                    "start": 16978,
                                    "end": 17101,
                                    "loc": {
                                      "start": {
                                        "line": 480,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 484,
                                        "column": 7
                                      }
                                    },
                                    "body": [
                                      {
                                        "type": "VariableDeclaration",
                                        "start": 16988,
                                        "end": 17005,
                                        "loc": {
                                          "start": {
                                            "line": 481,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 481,
                                            "column": 25
                                          }
                                        },
                                        "declarations": [
                                          {
                                            "type": "VariableDeclarator",
                                            "start": 16994,
                                            "end": 17004,
                                            "loc": {
                                              "start": {
                                                "line": 481,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 481,
                                                "column": 24
                                              }
                                            },
                                            "id": {
                                              "type": "Identifier",
                                              "start": 16994,
                                              "end": 16999,
                                              "loc": {
                                                "start": {
                                                  "line": 481,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 481,
                                                  "column": 19
                                                },
                                                "identifierName": "where"
                                              },
                                              "name": "where"
                                            },
                                            "init": {
                                              "type": "ObjectExpression",
                                              "start": 17002,
                                              "end": 17004,
                                              "loc": {
                                                "start": {
                                                  "line": 481,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 481,
                                                  "column": 24
                                                }
                                              },
                                              "properties": []
                                            }
                                          }
                                        ],
                                        "kind": "const"
                                      },
                                      {
                                        "type": "ExpressionStatement",
                                        "start": 17014,
                                        "end": 17071,
                                        "loc": {
                                          "start": {
                                            "line": 482,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 482,
                                            "column": 65
                                          }
                                        },
                                        "expression": {
                                          "type": "AssignmentExpression",
                                          "start": 17014,
                                          "end": 17070,
                                          "loc": {
                                            "start": {
                                              "line": 482,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 482,
                                              "column": 64
                                            }
                                          },
                                          "operator": "=",
                                          "left": {
                                            "type": "MemberExpression",
                                            "start": 17014,
                                            "end": 17059,
                                            "loc": {
                                              "start": {
                                                "line": 482,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 482,
                                                "column": 53
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 17014,
                                              "end": 17019,
                                              "loc": {
                                                "start": {
                                                  "line": 482,
                                                  "column": 8
                                                },
                                                "end": {
                                                  "line": 482,
                                                  "column": 13
                                                },
                                                "identifierName": "where"
                                              },
                                              "name": "where"
                                            },
                                            "property": {
                                              "type": "MemberExpression",
                                              "start": 17020,
                                              "end": 17058,
                                              "loc": {
                                                "start": {
                                                  "line": 482,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 482,
                                                  "column": 52
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 17020,
                                                "end": 17038,
                                                "loc": {
                                                  "start": {
                                                    "line": 482,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 482,
                                                    "column": 32
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 17020,
                                                  "end": 17031,
                                                  "loc": {
                                                    "start": {
                                                      "line": 482,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 482,
                                                      "column": 25
                                                    },
                                                    "identifierName": "association"
                                                  },
                                                  "name": "association"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 17032,
                                                  "end": 17038,
                                                  "loc": {
                                                    "start": {
                                                      "line": 482,
                                                      "column": 26
                                                    },
                                                    "end": {
                                                      "line": 482,
                                                      "column": 32
                                                    },
                                                    "identifierName": "target"
                                                  },
                                                  "name": "target"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 17039,
                                                "end": 17058,
                                                "loc": {
                                                  "start": {
                                                    "line": 482,
                                                    "column": 33
                                                  },
                                                  "end": {
                                                    "line": 482,
                                                    "column": 52
                                                  },
                                                  "identifierName": "primaryKeyAttribute"
                                                },
                                                "name": "primaryKeyAttribute"
                                              },
                                              "computed": false
                                            },
                                            "computed": true
                                          },
                                          "right": {
                                            "type": "Identifier",
                                            "start": 17062,
                                            "end": 17070,
                                            "loc": {
                                              "start": {
                                                "line": 482,
                                                "column": 56
                                              },
                                              "end": {
                                                "line": 482,
                                                "column": 64
                                              },
                                              "identifierName": "instance"
                                            },
                                            "name": "instance"
                                          }
                                        }
                                      },
                                      {
                                        "type": "ReturnStatement",
                                        "start": 17080,
                                        "end": 17093,
                                        "loc": {
                                          "start": {
                                            "line": 483,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 483,
                                            "column": 21
                                          }
                                        },
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 17087,
                                          "end": 17092,
                                          "loc": {
                                            "start": {
                                              "line": 483,
                                              "column": 15
                                            },
                                            "end": {
                                              "line": 483,
                                              "column": 20
                                            },
                                            "identifierName": "where"
                                          },
                                          "name": "where"
                                        }
                                      }
                                    ],
                                    "directives": []
                                  }
                                }
                              ],
                              "directives": []
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 17115,
                    "end": 17198,
                    "loc": {
                      "start": {
                        "line": 487,
                        "column": 4
                      },
                      "end": {
                        "line": 492,
                        "column": 6
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 17115,
                      "end": 17197,
                      "loc": {
                        "start": {
                          "line": 487,
                          "column": 4
                        },
                        "end": {
                          "line": 492,
                          "column": 5
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 17115,
                        "end": 17128,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 4
                          },
                          "end": {
                            "line": 487,
                            "column": 17
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 17115,
                          "end": 17122,
                          "loc": {
                            "start": {
                              "line": 487,
                              "column": 4
                            },
                            "end": {
                              "line": 487,
                              "column": 11
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 17123,
                          "end": 17128,
                          "loc": {
                            "start": {
                              "line": 487,
                              "column": 12
                            },
                            "end": {
                              "line": 487,
                              "column": 17
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "computed": false
                      },
                      "right": {
                        "type": "ObjectExpression",
                        "start": 17131,
                        "end": 17197,
                        "loc": {
                          "start": {
                            "line": 487,
                            "column": 20
                          },
                          "end": {
                            "line": 492,
                            "column": 5
                          }
                        },
                        "properties": [
                          {
                            "type": "ObjectProperty",
                            "start": 17139,
                            "end": 17191,
                            "loc": {
                              "start": {
                                "line": 488,
                                "column": 6
                              },
                              "end": {
                                "line": 491,
                                "column": 7
                              }
                            },
                            "method": false,
                            "shorthand": false,
                            "computed": false,
                            "key": {
                              "type": "Identifier",
                              "start": 17139,
                              "end": 17143,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 6
                                },
                                "end": {
                                  "line": 488,
                                  "column": 10
                                },
                                "identifierName": "$and"
                              },
                              "name": "$and"
                            },
                            "value": {
                              "type": "ArrayExpression",
                              "start": 17145,
                              "end": 17191,
                              "loc": {
                                "start": {
                                  "line": 488,
                                  "column": 12
                                },
                                "end": {
                                  "line": 491,
                                  "column": 7
                                }
                              },
                              "elements": [
                                {
                                  "type": "Identifier",
                                  "start": 17155,
                                  "end": 17160,
                                  "loc": {
                                    "start": {
                                      "line": 489,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 489,
                                      "column": 13
                                    },
                                    "identifierName": "where"
                                  },
                                  "name": "where"
                                },
                                {
                                  "type": "MemberExpression",
                                  "start": 17170,
                                  "end": 17183,
                                  "loc": {
                                    "start": {
                                      "line": 490,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 490,
                                      "column": 21
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 17170,
                                    "end": 17177,
                                    "loc": {
                                      "start": {
                                        "line": 490,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 490,
                                        "column": 15
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 17178,
                                    "end": 17183,
                                    "loc": {
                                      "start": {
                                        "line": 490,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 490,
                                        "column": 21
                                      },
                                      "identifierName": "where"
                                    },
                                    "name": "where"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 17204,
                    "end": 17325,
                    "loc": {
                      "start": {
                        "line": 494,
                        "column": 4
                      },
                      "end": {
                        "line": 494,
                        "column": 125
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 17211,
                      "end": 17324,
                      "loc": {
                        "start": {
                          "line": 494,
                          "column": 11
                        },
                        "end": {
                          "line": 494,
                          "column": 124
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 17211,
                        "end": 17256,
                        "loc": {
                          "start": {
                            "line": 494,
                            "column": 11
                          },
                          "end": {
                            "line": 494,
                            "column": 56
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 17211,
                          "end": 17251,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 11
                            },
                            "end": {
                              "line": 494,
                              "column": 51
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 17211,
                            "end": 17226,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 11
                              },
                              "end": {
                                "line": 494,
                                "column": 26
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 17211,
                              "end": 17222,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 11
                                },
                                "end": {
                                  "line": 494,
                                  "column": 22
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 17223,
                              "end": 17226,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 23
                                },
                                "end": {
                                  "line": 494,
                                  "column": 26
                                },
                                "identifierName": "get"
                              },
                              "name": "get"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 17227,
                              "end": 17241,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 27
                                },
                                "end": {
                                  "line": 494,
                                  "column": 41
                                },
                                "identifierName": "sourceInstance"
                              },
                              "name": "sourceInstance"
                            },
                            {
                              "type": "Identifier",
                              "start": 17243,
                              "end": 17250,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 43
                                },
                                "end": {
                                  "line": 494,
                                  "column": 50
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 17252,
                          "end": 17256,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 52
                            },
                            "end": {
                              "line": 494,
                              "column": 56
                            },
                            "identifierName": "then"
                          },
                          "name": "then"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 17257,
                          "end": 17323,
                          "loc": {
                            "start": {
                              "line": 494,
                              "column": 57
                            },
                            "end": {
                              "line": 494,
                              "column": 123
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 17257,
                              "end": 17274,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 57
                                },
                                "end": {
                                  "line": 494,
                                  "column": 74
                                },
                                "identifierName": "associatedObjects"
                              },
                              "name": "associatedObjects"
                            }
                          ],
                          "body": {
                            "type": "BinaryExpression",
                            "start": 17278,
                            "end": 17323,
                            "loc": {
                              "start": {
                                "line": 494,
                                "column": 78
                              },
                              "end": {
                                "line": 494,
                                "column": 123
                              }
                            },
                            "left": {
                              "type": "MemberExpression",
                              "start": 17278,
                              "end": 17302,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 78
                                },
                                "end": {
                                  "line": 494,
                                  "column": 102
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17278,
                                "end": 17295,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 78
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 95
                                  },
                                  "identifierName": "associatedObjects"
                                },
                                "name": "associatedObjects"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17296,
                                "end": 17302,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 96
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 102
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              },
                              "computed": false
                            },
                            "operator": "===",
                            "right": {
                              "type": "MemberExpression",
                              "start": 17307,
                              "end": 17323,
                              "loc": {
                                "start": {
                                  "line": 494,
                                  "column": 107
                                },
                                "end": {
                                  "line": 494,
                                  "column": 123
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 17307,
                                "end": 17316,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 107
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 116
                                  },
                                  "identifierName": "instances"
                                },
                                "name": "instances"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 17317,
                                "end": 17323,
                                "loc": {
                                  "start": {
                                    "line": 494,
                                    "column": 117
                                  },
                                  "end": {
                                    "line": 494,
                                    "column": 123
                                  },
                                  "identifierName": "length"
                                },
                                "name": "length"
                              },
                              "computed": false
                            }
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Check if one or more instance(s) are associated with this. If a list of instances is passed, the function returns true if _all_ instances are associated\n   *\n   * @param {Model[]|Model|string[]|String|number[]|Number} [instance(s)] Can be an array of instances or their primary keys\n   * @param {Object} [options] Options passed to getAssociations\n   * @return {Promise<boolean>}\n   ",
                  "start": 16182,
                  "end": 16576,
                  "loc": {
                    "start": {
                      "line": 456,
                      "column": 2
                    },
                    "end": {
                      "line": 462,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Set the associated models by passing an array of instances or their primary keys. Everything that it not in the passed array will be un-associated.\n   *\n   * @param {Array<Model|String|Number>} [newAssociations] An array of persisted instances or primary key of instances to associate with this. Pass `null` or `undefined` to remove all associations.\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate`, `update` and `destroy`\n   * @param {Object} [options.validate] Run validation for the join model\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
                  "start": 17333,
                  "end": 17981,
                  "loc": {
                    "start": {
                      "line": 497,
                      "column": 2
                    },
                    "end": {
                      "line": 505,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 17984,
              "end": 21295,
              "loc": {
                "start": {
                  "line": 506,
                  "column": 2
                },
                "end": {
                  "line": 588,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 17984,
                "end": 17987,
                "loc": {
                  "start": {
                    "line": 506,
                    "column": 2
                  },
                  "end": {
                    "line": 506,
                    "column": 5
                  },
                  "identifierName": "set"
                },
                "name": "set",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 17988,
                  "end": 18002,
                  "loc": {
                    "start": {
                      "line": 506,
                      "column": 6
                    },
                    "end": {
                      "line": 506,
                      "column": 20
                    },
                    "identifierName": "sourceInstance"
                  },
                  "name": "sourceInstance"
                },
                {
                  "type": "Identifier",
                  "start": 18004,
                  "end": 18024,
                  "loc": {
                    "start": {
                      "line": 506,
                      "column": 22
                    },
                    "end": {
                      "line": 506,
                      "column": 42
                    },
                    "identifierName": "newAssociatedObjects"
                  },
                  "name": "newAssociatedObjects"
                },
                {
                  "type": "Identifier",
                  "start": 18026,
                  "end": 18033,
                  "loc": {
                    "start": {
                      "line": 506,
                      "column": 44
                    },
                    "end": {
                      "line": 506,
                      "column": 51
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 18035,
                "end": 21295,
                "loc": {
                  "start": {
                    "line": 506,
                    "column": 53
                  },
                  "end": {
                    "line": 588,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "ExpressionStatement",
                    "start": 18041,
                    "end": 18065,
                    "loc": {
                      "start": {
                        "line": 507,
                        "column": 4
                      },
                      "end": {
                        "line": 507,
                        "column": 28
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 18041,
                      "end": 18064,
                      "loc": {
                        "start": {
                          "line": 507,
                          "column": 4
                        },
                        "end": {
                          "line": 507,
                          "column": 27
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 18041,
                        "end": 18048,
                        "loc": {
                          "start": {
                            "line": 507,
                            "column": 4
                          },
                          "end": {
                            "line": 507,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 18051,
                        "end": 18064,
                        "loc": {
                          "start": {
                            "line": 507,
                            "column": 14
                          },
                          "end": {
                            "line": 507,
                            "column": 27
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 18051,
                          "end": 18058,
                          "loc": {
                            "start": {
                              "line": 507,
                              "column": 14
                            },
                            "end": {
                              "line": 507,
                              "column": 21
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 18062,
                          "end": 18064,
                          "loc": {
                            "start": {
                              "line": 507,
                              "column": 25
                            },
                            "end": {
                              "line": 507,
                              "column": 27
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18071,
                    "end": 18096,
                    "loc": {
                      "start": {
                        "line": 509,
                        "column": 4
                      },
                      "end": {
                        "line": 509,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18077,
                        "end": 18095,
                        "loc": {
                          "start": {
                            "line": 509,
                            "column": 10
                          },
                          "end": {
                            "line": 509,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18077,
                          "end": 18088,
                          "loc": {
                            "start": {
                              "line": 509,
                              "column": 10
                            },
                            "end": {
                              "line": 509,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 18091,
                          "end": 18095,
                          "loc": {
                            "start": {
                              "line": 509,
                              "column": 24
                            },
                            "end": {
                              "line": 509,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18101,
                    "end": 18158,
                    "loc": {
                      "start": {
                        "line": 510,
                        "column": 4
                      },
                      "end": {
                        "line": 510,
                        "column": 61
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18107,
                        "end": 18157,
                        "loc": {
                          "start": {
                            "line": 510,
                            "column": 10
                          },
                          "end": {
                            "line": 510,
                            "column": 60
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18107,
                          "end": 18116,
                          "loc": {
                            "start": {
                              "line": 510,
                              "column": 10
                            },
                            "end": {
                              "line": 510,
                              "column": 19
                            },
                            "identifierName": "sourceKey"
                          },
                          "name": "sourceKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 18119,
                          "end": 18157,
                          "loc": {
                            "start": {
                              "line": 510,
                              "column": 22
                            },
                            "end": {
                              "line": 510,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18119,
                            "end": 18137,
                            "loc": {
                              "start": {
                                "line": 510,
                                "column": 22
                              },
                              "end": {
                                "line": 510,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 18119,
                              "end": 18130,
                              "loc": {
                                "start": {
                                  "line": 510,
                                  "column": 22
                                },
                                "end": {
                                  "line": 510,
                                  "column": 33
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18131,
                              "end": 18137,
                              "loc": {
                                "start": {
                                  "line": 510,
                                  "column": 34
                                },
                                "end": {
                                  "line": 510,
                                  "column": 40
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18138,
                            "end": 18157,
                            "loc": {
                              "start": {
                                "line": 510,
                                "column": 41
                              },
                              "end": {
                                "line": 510,
                                "column": 60
                              },
                              "identifierName": "primaryKeyAttribute"
                            },
                            "name": "primaryKeyAttribute"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18163,
                    "end": 18220,
                    "loc": {
                      "start": {
                        "line": 511,
                        "column": 4
                      },
                      "end": {
                        "line": 511,
                        "column": 61
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18169,
                        "end": 18219,
                        "loc": {
                          "start": {
                            "line": 511,
                            "column": 10
                          },
                          "end": {
                            "line": 511,
                            "column": 60
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18169,
                          "end": 18178,
                          "loc": {
                            "start": {
                              "line": 511,
                              "column": 10
                            },
                            "end": {
                              "line": 511,
                              "column": 19
                            },
                            "identifierName": "targetKey"
                          },
                          "name": "targetKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 18181,
                          "end": 18219,
                          "loc": {
                            "start": {
                              "line": 511,
                              "column": 22
                            },
                            "end": {
                              "line": 511,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18181,
                            "end": 18199,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 22
                              },
                              "end": {
                                "line": 511,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 18181,
                              "end": 18192,
                              "loc": {
                                "start": {
                                  "line": 511,
                                  "column": 22
                                },
                                "end": {
                                  "line": 511,
                                  "column": 33
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18193,
                              "end": 18199,
                              "loc": {
                                "start": {
                                  "line": 511,
                                  "column": 34
                                },
                                "end": {
                                  "line": 511,
                                  "column": 40
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18200,
                            "end": 18219,
                            "loc": {
                              "start": {
                                "line": 511,
                                "column": 41
                              },
                              "end": {
                                "line": 511,
                                "column": 60
                              },
                              "identifierName": "primaryKeyAttribute"
                            },
                            "name": "primaryKeyAttribute"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18225,
                    "end": 18267,
                    "loc": {
                      "start": {
                        "line": 512,
                        "column": 4
                      },
                      "end": {
                        "line": 512,
                        "column": 46
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18231,
                        "end": 18266,
                        "loc": {
                          "start": {
                            "line": 512,
                            "column": 10
                          },
                          "end": {
                            "line": 512,
                            "column": 45
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18231,
                          "end": 18241,
                          "loc": {
                            "start": {
                              "line": 512,
                              "column": 10
                            },
                            "end": {
                              "line": 512,
                              "column": 20
                            },
                            "identifierName": "identifier"
                          },
                          "name": "identifier"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 18244,
                          "end": 18266,
                          "loc": {
                            "start": {
                              "line": 512,
                              "column": 23
                            },
                            "end": {
                              "line": 512,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18244,
                            "end": 18255,
                            "loc": {
                              "start": {
                                "line": 512,
                                "column": 23
                              },
                              "end": {
                                "line": 512,
                                "column": 34
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18256,
                            "end": 18266,
                            "loc": {
                              "start": {
                                "line": 512,
                                "column": 35
                              },
                              "end": {
                                "line": 512,
                                "column": 45
                              },
                              "identifierName": "identifier"
                            },
                            "name": "identifier"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18272,
                    "end": 18328,
                    "loc": {
                      "start": {
                        "line": 513,
                        "column": 4
                      },
                      "end": {
                        "line": 513,
                        "column": 60
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18278,
                        "end": 18327,
                        "loc": {
                          "start": {
                            "line": 513,
                            "column": 10
                          },
                          "end": {
                            "line": 513,
                            "column": 59
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18278,
                          "end": 18295,
                          "loc": {
                            "start": {
                              "line": 513,
                              "column": 10
                            },
                            "end": {
                              "line": 513,
                              "column": 27
                            },
                            "identifierName": "foreignIdentifier"
                          },
                          "name": "foreignIdentifier"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 18298,
                          "end": 18327,
                          "loc": {
                            "start": {
                              "line": 513,
                              "column": 30
                            },
                            "end": {
                              "line": 513,
                              "column": 59
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18298,
                            "end": 18309,
                            "loc": {
                              "start": {
                                "line": 513,
                                "column": 30
                              },
                              "end": {
                                "line": 513,
                                "column": 41
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18310,
                            "end": 18327,
                            "loc": {
                              "start": {
                                "line": 513,
                                "column": 42
                              },
                              "end": {
                                "line": 513,
                                "column": 59
                              },
                              "identifierName": "foreignIdentifier"
                            },
                            "name": "foreignIdentifier"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 18333,
                    "end": 18350,
                    "loc": {
                      "start": {
                        "line": 514,
                        "column": 4
                      },
                      "end": {
                        "line": 514,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 18339,
                        "end": 18349,
                        "loc": {
                          "start": {
                            "line": 514,
                            "column": 10
                          },
                          "end": {
                            "line": 514,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 18339,
                          "end": 18344,
                          "loc": {
                            "start": {
                              "line": 514,
                              "column": 10
                            },
                            "end": {
                              "line": 514,
                              "column": 15
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 18347,
                          "end": 18349,
                          "loc": {
                            "start": {
                              "line": 514,
                              "column": 18
                            },
                            "end": {
                              "line": 514,
                              "column": 20
                            }
                          },
                          "properties": []
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "IfStatement",
                    "start": 18356,
                    "end": 18524,
                    "loc": {
                      "start": {
                        "line": 516,
                        "column": 4
                      },
                      "end": {
                        "line": 520,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "BinaryExpression",
                      "start": 18360,
                      "end": 18389,
                      "loc": {
                        "start": {
                          "line": 516,
                          "column": 8
                        },
                        "end": {
                          "line": 516,
                          "column": 37
                        }
                      },
                      "left": {
                        "type": "Identifier",
                        "start": 18360,
                        "end": 18380,
                        "loc": {
                          "start": {
                            "line": 516,
                            "column": 8
                          },
                          "end": {
                            "line": 516,
                            "column": 28
                          },
                          "identifierName": "newAssociatedObjects"
                        },
                        "name": "newAssociatedObjects"
                      },
                      "operator": "===",
                      "right": {
                        "type": "NullLiteral",
                        "start": 18385,
                        "end": 18389,
                        "loc": {
                          "start": {
                            "line": 516,
                            "column": 33
                          },
                          "end": {
                            "line": 516,
                            "column": 37
                          }
                        }
                      }
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 18391,
                      "end": 18431,
                      "loc": {
                        "start": {
                          "line": 516,
                          "column": 39
                        },
                        "end": {
                          "line": 518,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 18399,
                          "end": 18425,
                          "loc": {
                            "start": {
                              "line": 517,
                              "column": 6
                            },
                            "end": {
                              "line": 517,
                              "column": 32
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 18399,
                            "end": 18424,
                            "loc": {
                              "start": {
                                "line": 517,
                                "column": 6
                              },
                              "end": {
                                "line": 517,
                                "column": 31
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 18399,
                              "end": 18419,
                              "loc": {
                                "start": {
                                  "line": 517,
                                  "column": 6
                                },
                                "end": {
                                  "line": 517,
                                  "column": 26
                                },
                                "identifierName": "newAssociatedObjects"
                              },
                              "name": "newAssociatedObjects"
                            },
                            "right": {
                              "type": "ArrayExpression",
                              "start": 18422,
                              "end": 18424,
                              "loc": {
                                "start": {
                                  "line": 517,
                                  "column": 29
                                },
                                "end": {
                                  "line": 517,
                                  "column": 31
                                }
                              },
                              "elements": []
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": {
                      "type": "BlockStatement",
                      "start": 18437,
                      "end": 18524,
                      "loc": {
                        "start": {
                          "line": 518,
                          "column": 11
                        },
                        "end": {
                          "line": 520,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 18445,
                          "end": 18518,
                          "loc": {
                            "start": {
                              "line": 519,
                              "column": 6
                            },
                            "end": {
                              "line": 519,
                              "column": 79
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 18445,
                            "end": 18517,
                            "loc": {
                              "start": {
                                "line": 519,
                                "column": 6
                              },
                              "end": {
                                "line": 519,
                                "column": 78
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 18445,
                              "end": 18465,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 6
                                },
                                "end": {
                                  "line": 519,
                                  "column": 26
                                },
                                "identifierName": "newAssociatedObjects"
                              },
                              "name": "newAssociatedObjects"
                            },
                            "right": {
                              "type": "CallExpression",
                              "start": 18468,
                              "end": 18517,
                              "loc": {
                                "start": {
                                  "line": 519,
                                  "column": 29
                                },
                                "end": {
                                  "line": 519,
                                  "column": 78
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18468,
                                "end": 18495,
                                "loc": {
                                  "start": {
                                    "line": 519,
                                    "column": 29
                                  },
                                  "end": {
                                    "line": 519,
                                    "column": 56
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18468,
                                  "end": 18479,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 29
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 40
                                    },
                                    "identifierName": "association"
                                  },
                                  "name": "association"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18480,
                                  "end": 18495,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 41
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 56
                                    },
                                    "identifierName": "toInstanceArray"
                                  },
                                  "name": "toInstanceArray"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 18496,
                                  "end": 18516,
                                  "loc": {
                                    "start": {
                                      "line": 519,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 519,
                                      "column": 77
                                    },
                                    "identifierName": "newAssociatedObjects"
                                  },
                                  "name": "newAssociatedObjects"
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 18530,
                    "end": 18580,
                    "loc": {
                      "start": {
                        "line": 522,
                        "column": 4
                      },
                      "end": {
                        "line": 522,
                        "column": 54
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 18530,
                      "end": 18579,
                      "loc": {
                        "start": {
                          "line": 522,
                          "column": 4
                        },
                        "end": {
                          "line": 522,
                          "column": 53
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 18530,
                        "end": 18547,
                        "loc": {
                          "start": {
                            "line": 522,
                            "column": 4
                          },
                          "end": {
                            "line": 522,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 18530,
                          "end": 18535,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 4
                            },
                            "end": {
                              "line": 522,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 18536,
                          "end": 18546,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 10
                            },
                            "end": {
                              "line": 522,
                              "column": 20
                            },
                            "identifierName": "identifier"
                          },
                          "name": "identifier"
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 18550,
                        "end": 18579,
                        "loc": {
                          "start": {
                            "line": 522,
                            "column": 24
                          },
                          "end": {
                            "line": 522,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 18550,
                          "end": 18568,
                          "loc": {
                            "start": {
                              "line": 522,
                              "column": 24
                            },
                            "end": {
                              "line": 522,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 18550,
                            "end": 18564,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 24
                              },
                              "end": {
                                "line": 522,
                                "column": 38
                              },
                              "identifierName": "sourceInstance"
                            },
                            "name": "sourceInstance"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18565,
                            "end": 18568,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 39
                              },
                              "end": {
                                "line": 522,
                                "column": 42
                              },
                              "identifierName": "get"
                            },
                            "name": "get"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 18569,
                            "end": 18578,
                            "loc": {
                              "start": {
                                "line": 522,
                                "column": 43
                              },
                              "end": {
                                "line": 522,
                                "column": 52
                              },
                              "identifierName": "sourceKey"
                            },
                            "name": "sourceKey"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 18585,
                    "end": 18628,
                    "loc": {
                      "start": {
                        "line": 523,
                        "column": 4
                      },
                      "end": {
                        "line": 523,
                        "column": 47
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 18585,
                      "end": 18627,
                      "loc": {
                        "start": {
                          "line": 523,
                          "column": 4
                        },
                        "end": {
                          "line": 523,
                          "column": 46
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 18585,
                        "end": 18593,
                        "loc": {
                          "start": {
                            "line": 523,
                            "column": 4
                          },
                          "end": {
                            "line": 523,
                            "column": 12
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 18585,
                          "end": 18586,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 4
                            },
                            "end": {
                              "line": 523,
                              "column": 5
                            },
                            "identifierName": "_"
                          },
                          "name": "_"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 18587,
                          "end": 18593,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 6
                            },
                            "end": {
                              "line": 523,
                              "column": 12
                            },
                            "identifierName": "assign"
                          },
                          "name": "assign"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 18594,
                          "end": 18599,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 13
                            },
                            "end": {
                              "line": 523,
                              "column": 18
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        {
                          "type": "MemberExpression",
                          "start": 18601,
                          "end": 18626,
                          "loc": {
                            "start": {
                              "line": 523,
                              "column": 20
                            },
                            "end": {
                              "line": 523,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 18601,
                            "end": 18620,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 20
                              },
                              "end": {
                                "line": 523,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 18601,
                              "end": 18612,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 20
                                },
                                "end": {
                                  "line": 523,
                                  "column": 31
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18613,
                              "end": 18620,
                              "loc": {
                                "start": {
                                  "line": 523,
                                  "column": 32
                                },
                                "end": {
                                  "line": 523,
                                  "column": 39
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 18621,
                            "end": 18626,
                            "loc": {
                              "start": {
                                "line": 523,
                                "column": 40
                              },
                              "end": {
                                "line": 523,
                                "column": 45
                              },
                              "identifierName": "scope"
                            },
                            "name": "scope"
                          },
                          "computed": false
                        }
                      ]
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 18634,
                    "end": 21291,
                    "loc": {
                      "start": {
                        "line": 525,
                        "column": 4
                      },
                      "end": {
                        "line": 587,
                        "column": 7
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 18641,
                      "end": 21290,
                      "loc": {
                        "start": {
                          "line": 525,
                          "column": 11
                        },
                        "end": {
                          "line": 587,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 18641,
                        "end": 18720,
                        "loc": {
                          "start": {
                            "line": 525,
                            "column": 11
                          },
                          "end": {
                            "line": 525,
                            "column": 90
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 18641,
                          "end": 18715,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 11
                            },
                            "end": {
                              "line": 525,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 18641,
                            "end": 18674,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 11
                              },
                              "end": {
                                "line": 525,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 18641,
                              "end": 18666,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 11
                                },
                                "end": {
                                  "line": 525,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 18641,
                                "end": 18660,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18641,
                                  "end": 18652,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 22
                                    },
                                    "identifierName": "association"
                                  },
                                  "name": "association"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18653,
                                  "end": 18660,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 30
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 18661,
                                "end": 18666,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 36
                                  },
                                  "identifierName": "model"
                                },
                                "name": "model"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 18667,
                              "end": 18674,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 37
                                },
                                "end": {
                                  "line": 525,
                                  "column": 44
                                },
                                "identifierName": "findAll"
                              },
                              "name": "findAll"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 18675,
                              "end": 18714,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 45
                                },
                                "end": {
                                  "line": 525,
                                  "column": 84
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 18675,
                                "end": 18685,
                                "loc": {
                                  "start": {
                                    "line": 525,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 525,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 18675,
                                  "end": 18676,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 46
                                    },
                                    "identifierName": "_"
                                  },
                                  "name": "_"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 18677,
                                  "end": 18685,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 55
                                    },
                                    "identifierName": "defaults"
                                  },
                                  "name": "defaults"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 18686,
                                  "end": 18704,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 74
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "ObjectProperty",
                                      "start": 18687,
                                      "end": 18692,
                                      "loc": {
                                        "start": {
                                          "line": 525,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 525,
                                          "column": 62
                                        }
                                      },
                                      "method": false,
                                      "shorthand": true,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 18687,
                                        "end": 18692,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 62
                                          },
                                          "identifierName": "where"
                                        },
                                        "name": "where"
                                      },
                                      "value": {
                                        "type": "Identifier",
                                        "start": 18687,
                                        "end": 18692,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 62
                                          },
                                          "identifierName": "where"
                                        },
                                        "name": "where"
                                      },
                                      "extra": {
                                        "shorthand": true
                                      }
                                    },
                                    {
                                      "type": "ObjectProperty",
                                      "start": 18694,
                                      "end": 18703,
                                      "loc": {
                                        "start": {
                                          "line": 525,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 525,
                                          "column": 73
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 18694,
                                        "end": 18697,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 67
                                          },
                                          "identifierName": "raw"
                                        },
                                        "name": "raw"
                                      },
                                      "value": {
                                        "type": "BooleanLiteral",
                                        "start": 18699,
                                        "end": 18703,
                                        "loc": {
                                          "start": {
                                            "line": 525,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 525,
                                            "column": 73
                                          }
                                        },
                                        "value": true
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "Identifier",
                                  "start": 18706,
                                  "end": 18713,
                                  "loc": {
                                    "start": {
                                      "line": 525,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 525,
                                      "column": 83
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                }
                              ]
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 18716,
                          "end": 18720,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 86
                            },
                            "end": {
                              "line": 525,
                              "column": 90
                            },
                            "identifierName": "then"
                          },
                          "name": "then"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 18721,
                          "end": 21289,
                          "loc": {
                            "start": {
                              "line": 525,
                              "column": 91
                            },
                            "end": {
                              "line": 587,
                              "column": 5
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": false,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 18721,
                              "end": 18732,
                              "loc": {
                                "start": {
                                  "line": 525,
                                  "column": 91
                                },
                                "end": {
                                  "line": 525,
                                  "column": 102
                                },
                                "identifierName": "currentRows"
                              },
                              "name": "currentRows"
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "start": 18736,
                            "end": 21289,
                            "loc": {
                              "start": {
                                "line": 525,
                                "column": 106
                              },
                              "end": {
                                "line": 587,
                                "column": 5
                              }
                            },
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "start": 18744,
                                "end": 18776,
                                "loc": {
                                  "start": {
                                    "line": 526,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 526,
                                    "column": 38
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 18750,
                                    "end": 18775,
                                    "loc": {
                                      "start": {
                                        "line": 526,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 526,
                                        "column": 37
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 18750,
                                      "end": 18770,
                                      "loc": {
                                        "start": {
                                          "line": 526,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 526,
                                          "column": 32
                                        },
                                        "identifierName": "obsoleteAssociations"
                                      },
                                      "name": "obsoleteAssociations"
                                    },
                                    "init": {
                                      "type": "ArrayExpression",
                                      "start": 18773,
                                      "end": 18775,
                                      "loc": {
                                        "start": {
                                          "line": 526,
                                          "column": 35
                                        },
                                        "end": {
                                          "line": 526,
                                          "column": 37
                                        }
                                      },
                                      "elements": []
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 18783,
                                "end": 18803,
                                "loc": {
                                  "start": {
                                    "line": 527,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 527,
                                    "column": 26
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 18789,
                                    "end": 18802,
                                    "loc": {
                                      "start": {
                                        "line": 527,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 527,
                                        "column": 25
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 18789,
                                      "end": 18797,
                                      "loc": {
                                        "start": {
                                          "line": 527,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 527,
                                          "column": 20
                                        },
                                        "identifierName": "promises"
                                      },
                                      "name": "promises"
                                    },
                                    "init": {
                                      "type": "ArrayExpression",
                                      "start": 18800,
                                      "end": 18802,
                                      "loc": {
                                        "start": {
                                          "line": 527,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 527,
                                          "column": 25
                                        }
                                      },
                                      "elements": []
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 18810,
                                "end": 18856,
                                "loc": {
                                  "start": {
                                    "line": 528,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 528,
                                    "column": 52
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 18814,
                                    "end": 18855,
                                    "loc": {
                                      "start": {
                                        "line": 528,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 528,
                                        "column": 51
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 18814,
                                      "end": 18831,
                                      "loc": {
                                        "start": {
                                          "line": 528,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 528,
                                          "column": 27
                                        },
                                        "identifierName": "defaultAttributes"
                                      },
                                      "name": "defaultAttributes"
                                    },
                                    "init": {
                                      "type": "LogicalExpression",
                                      "start": 18834,
                                      "end": 18855,
                                      "loc": {
                                        "start": {
                                          "line": 528,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 528,
                                          "column": 51
                                        }
                                      },
                                      "left": {
                                        "type": "MemberExpression",
                                        "start": 18834,
                                        "end": 18849,
                                        "loc": {
                                          "start": {
                                            "line": 528,
                                            "column": 30
                                          },
                                          "end": {
                                            "line": 528,
                                            "column": 45
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 18834,
                                          "end": 18841,
                                          "loc": {
                                            "start": {
                                              "line": 528,
                                              "column": 30
                                            },
                                            "end": {
                                              "line": 528,
                                              "column": 37
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 18842,
                                          "end": 18849,
                                          "loc": {
                                            "start": {
                                              "line": 528,
                                              "column": 38
                                            },
                                            "end": {
                                              "line": 528,
                                              "column": 45
                                            },
                                            "identifierName": "through"
                                          },
                                          "name": "through"
                                        },
                                        "computed": false
                                      },
                                      "operator": "||",
                                      "right": {
                                        "type": "ObjectExpression",
                                        "start": 18853,
                                        "end": 18855,
                                        "loc": {
                                          "start": {
                                            "line": 528,
                                            "column": 49
                                          },
                                          "end": {
                                            "line": 528,
                                            "column": 51
                                          }
                                        },
                                        "properties": []
                                      }
                                    }
                                  }
                                ],
                                "kind": "let",
                                "trailingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " Don't try to insert the transaction as an attribute in the through table",
                                    "start": 18864,
                                    "end": 18939,
                                    "loc": {
                                      "start": {
                                        "line": 530,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 530,
                                        "column": 81
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "ExpressionStatement",
                                "start": 18946,
                                "end": 19090,
                                "loc": {
                                  "start": {
                                    "line": 531,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 531,
                                    "column": 150
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 18946,
                                  "end": 19089,
                                  "loc": {
                                    "start": {
                                      "line": 531,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 531,
                                      "column": 149
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "Identifier",
                                    "start": 18946,
                                    "end": 18963,
                                    "loc": {
                                      "start": {
                                        "line": 531,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 531,
                                        "column": 23
                                      },
                                      "identifierName": "defaultAttributes"
                                    },
                                    "name": "defaultAttributes",
                                    "leadingComments": null
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 18966,
                                    "end": 19089,
                                    "loc": {
                                      "start": {
                                        "line": 531,
                                        "column": 26
                                      },
                                      "end": {
                                        "line": 531,
                                        "column": 149
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 18966,
                                      "end": 18972,
                                      "loc": {
                                        "start": {
                                          "line": 531,
                                          "column": 26
                                        },
                                        "end": {
                                          "line": 531,
                                          "column": 32
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 18966,
                                        "end": 18967,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 26
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 27
                                          },
                                          "identifierName": "_"
                                        },
                                        "name": "_"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 18968,
                                        "end": 18972,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 28
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 32
                                          },
                                          "identifierName": "omit"
                                        },
                                        "name": "omit"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 18973,
                                        "end": 18990,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 50
                                          },
                                          "identifierName": "defaultAttributes"
                                        },
                                        "name": "defaultAttributes"
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 18992,
                                        "end": 19088,
                                        "loc": {
                                          "start": {
                                            "line": 531,
                                            "column": 52
                                          },
                                          "end": {
                                            "line": 531,
                                            "column": 148
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "StringLiteral",
                                            "start": 18993,
                                            "end": 19006,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 53
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 66
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "transaction",
                                              "raw": "'transaction'"
                                            },
                                            "value": "transaction"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19008,
                                            "end": 19015,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 68
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 75
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "hooks",
                                              "raw": "'hooks'"
                                            },
                                            "value": "hooks"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19017,
                                            "end": 19034,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 77
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 94
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "individualHooks",
                                              "raw": "'individualHooks'"
                                            },
                                            "value": "individualHooks"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19036,
                                            "end": 19054,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 96
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 114
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "ignoreDuplicates",
                                              "raw": "'ignoreDuplicates'"
                                            },
                                            "value": "ignoreDuplicates"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19056,
                                            "end": 19066,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 116
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 126
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "validate",
                                              "raw": "'validate'"
                                            },
                                            "value": "validate"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19068,
                                            "end": 19076,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 128
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 136
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "fields",
                                              "raw": "'fields'"
                                            },
                                            "value": "fields"
                                          },
                                          {
                                            "type": "StringLiteral",
                                            "start": 19078,
                                            "end": 19087,
                                            "loc": {
                                              "start": {
                                                "line": 531,
                                                "column": 138
                                              },
                                              "end": {
                                                "line": 531,
                                                "column": 147
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "logging",
                                              "raw": "'logging'"
                                            },
                                            "value": "logging"
                                          }
                                        ]
                                      }
                                    ]
                                  },
                                  "leadingComments": null
                                },
                                "leadingComments": [
                                  {
                                    "type": "CommentLine",
                                    "value": " Don't try to insert the transaction as an attribute in the through table",
                                    "start": 18864,
                                    "end": 18939,
                                    "loc": {
                                      "start": {
                                        "line": 530,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 530,
                                        "column": 81
                                      }
                                    }
                                  }
                                ]
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 19098,
                                "end": 19266,
                                "loc": {
                                  "start": {
                                    "line": 533,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 535,
                                    "column": 8
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 19104,
                                    "end": 19265,
                                    "loc": {
                                      "start": {
                                        "line": 533,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 535,
                                        "column": 7
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 19104,
                                      "end": 19123,
                                      "loc": {
                                        "start": {
                                          "line": 533,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 533,
                                          "column": 31
                                        },
                                        "identifierName": "unassociatedObjects"
                                      },
                                      "name": "unassociatedObjects"
                                    },
                                    "init": {
                                      "type": "CallExpression",
                                      "start": 19126,
                                      "end": 19265,
                                      "loc": {
                                        "start": {
                                          "line": 533,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 535,
                                          "column": 7
                                        }
                                      },
                                      "callee": {
                                        "type": "MemberExpression",
                                        "start": 19126,
                                        "end": 19153,
                                        "loc": {
                                          "start": {
                                            "line": 533,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 533,
                                            "column": 61
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 19126,
                                          "end": 19146,
                                          "loc": {
                                            "start": {
                                              "line": 533,
                                              "column": 34
                                            },
                                            "end": {
                                              "line": 533,
                                              "column": 54
                                            },
                                            "identifierName": "newAssociatedObjects"
                                          },
                                          "name": "newAssociatedObjects"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 19147,
                                          "end": 19153,
                                          "loc": {
                                            "start": {
                                              "line": 533,
                                              "column": 55
                                            },
                                            "end": {
                                              "line": 533,
                                              "column": 61
                                            },
                                            "identifierName": "filter"
                                          },
                                          "name": "filter"
                                        },
                                        "computed": false
                                      },
                                      "arguments": [
                                        {
                                          "type": "ArrowFunctionExpression",
                                          "start": 19154,
                                          "end": 19257,
                                          "loc": {
                                            "start": {
                                              "line": 533,
                                              "column": 62
                                            },
                                            "end": {
                                              "line": 534,
                                              "column": 96
                                            }
                                          },
                                          "id": null,
                                          "generator": false,
                                          "expression": true,
                                          "async": false,
                                          "params": [
                                            {
                                              "type": "Identifier",
                                              "start": 19154,
                                              "end": 19157,
                                              "loc": {
                                                "start": {
                                                  "line": 533,
                                                  "column": 62
                                                },
                                                "end": {
                                                  "line": 533,
                                                  "column": 65
                                                },
                                                "identifierName": "obj"
                                              },
                                              "name": "obj"
                                            }
                                          ],
                                          "body": {
                                            "type": "UnaryExpression",
                                            "start": 19169,
                                            "end": 19257,
                                            "loc": {
                                              "start": {
                                                "line": 534,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 534,
                                                "column": 96
                                              }
                                            },
                                            "operator": "!",
                                            "prefix": true,
                                            "argument": {
                                              "type": "CallExpression",
                                              "start": 19170,
                                              "end": 19257,
                                              "loc": {
                                                "start": {
                                                  "line": 534,
                                                  "column": 9
                                                },
                                                "end": {
                                                  "line": 534,
                                                  "column": 96
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 19170,
                                                "end": 19176,
                                                "loc": {
                                                  "start": {
                                                    "line": 534,
                                                    "column": 9
                                                  },
                                                  "end": {
                                                    "line": 534,
                                                    "column": 15
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 19170,
                                                  "end": 19171,
                                                  "loc": {
                                                    "start": {
                                                      "line": 534,
                                                      "column": 9
                                                    },
                                                    "end": {
                                                      "line": 534,
                                                      "column": 10
                                                    },
                                                    "identifierName": "_"
                                                  },
                                                  "name": "_"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 19172,
                                                  "end": 19176,
                                                  "loc": {
                                                    "start": {
                                                      "line": 534,
                                                      "column": 11
                                                    },
                                                    "end": {
                                                      "line": 534,
                                                      "column": 15
                                                    },
                                                    "identifierName": "find"
                                                  },
                                                  "name": "find"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 19177,
                                                  "end": 19188,
                                                  "loc": {
                                                    "start": {
                                                      "line": 534,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 534,
                                                      "column": 27
                                                    },
                                                    "identifierName": "currentRows"
                                                  },
                                                  "name": "currentRows"
                                                },
                                                {
                                                  "type": "ArrowFunctionExpression",
                                                  "start": 19190,
                                                  "end": 19256,
                                                  "loc": {
                                                    "start": {
                                                      "line": 534,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 534,
                                                      "column": 95
                                                    }
                                                  },
                                                  "id": null,
                                                  "generator": false,
                                                  "expression": true,
                                                  "async": false,
                                                  "params": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 19190,
                                                      "end": 19200,
                                                      "loc": {
                                                        "start": {
                                                          "line": 534,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 534,
                                                          "column": 39
                                                        },
                                                        "identifierName": "currentRow"
                                                      },
                                                      "name": "currentRow"
                                                    }
                                                  ],
                                                  "body": {
                                                    "type": "BinaryExpression",
                                                    "start": 19204,
                                                    "end": 19256,
                                                    "loc": {
                                                      "start": {
                                                        "line": 534,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 534,
                                                        "column": 95
                                                      }
                                                    },
                                                    "left": {
                                                      "type": "MemberExpression",
                                                      "start": 19204,
                                                      "end": 19233,
                                                      "loc": {
                                                        "start": {
                                                          "line": 534,
                                                          "column": 43
                                                        },
                                                        "end": {
                                                          "line": 534,
                                                          "column": 72
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 19204,
                                                        "end": 19214,
                                                        "loc": {
                                                          "start": {
                                                            "line": 534,
                                                            "column": 43
                                                          },
                                                          "end": {
                                                            "line": 534,
                                                            "column": 53
                                                          },
                                                          "identifierName": "currentRow"
                                                        },
                                                        "name": "currentRow"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 19215,
                                                        "end": 19232,
                                                        "loc": {
                                                          "start": {
                                                            "line": 534,
                                                            "column": 54
                                                          },
                                                          "end": {
                                                            "line": 534,
                                                            "column": 71
                                                          },
                                                          "identifierName": "foreignIdentifier"
                                                        },
                                                        "name": "foreignIdentifier"
                                                      },
                                                      "computed": true
                                                    },
                                                    "operator": "===",
                                                    "right": {
                                                      "type": "CallExpression",
                                                      "start": 19238,
                                                      "end": 19256,
                                                      "loc": {
                                                        "start": {
                                                          "line": 534,
                                                          "column": 77
                                                        },
                                                        "end": {
                                                          "line": 534,
                                                          "column": 95
                                                        }
                                                      },
                                                      "callee": {
                                                        "type": "MemberExpression",
                                                        "start": 19238,
                                                        "end": 19245,
                                                        "loc": {
                                                          "start": {
                                                            "line": 534,
                                                            "column": 77
                                                          },
                                                          "end": {
                                                            "line": 534,
                                                            "column": 84
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 19238,
                                                          "end": 19241,
                                                          "loc": {
                                                            "start": {
                                                              "line": 534,
                                                              "column": 77
                                                            },
                                                            "end": {
                                                              "line": 534,
                                                              "column": 80
                                                            },
                                                            "identifierName": "obj"
                                                          },
                                                          "name": "obj"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 19242,
                                                          "end": 19245,
                                                          "loc": {
                                                            "start": {
                                                              "line": 534,
                                                              "column": 81
                                                            },
                                                            "end": {
                                                              "line": 534,
                                                              "column": 84
                                                            },
                                                            "identifierName": "get"
                                                          },
                                                          "name": "get"
                                                        },
                                                        "computed": false
                                                      },
                                                      "arguments": [
                                                        {
                                                          "type": "Identifier",
                                                          "start": 19246,
                                                          "end": 19255,
                                                          "loc": {
                                                            "start": {
                                                              "line": 534,
                                                              "column": 85
                                                            },
                                                            "end": {
                                                              "line": 534,
                                                              "column": 94
                                                            },
                                                            "identifierName": "targetKey"
                                                          },
                                                          "name": "targetKey"
                                                        }
                                                      ]
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            "extra": {
                                              "parenthesizedArgument": false
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "ForOfStatement",
                                "start": 19274,
                                "end": 20263,
                                "loc": {
                                  "start": {
                                    "line": 537,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 559,
                                    "column": 7
                                  }
                                },
                                "left": {
                                  "type": "VariableDeclaration",
                                  "start": 19279,
                                  "end": 19295,
                                  "loc": {
                                    "start": {
                                      "line": 537,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 537,
                                      "column": 27
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 19285,
                                      "end": 19295,
                                      "loc": {
                                        "start": {
                                          "line": 537,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 537,
                                          "column": 27
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 19285,
                                        "end": 19295,
                                        "loc": {
                                          "start": {
                                            "line": 537,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 537,
                                            "column": 27
                                          },
                                          "identifierName": "currentRow"
                                        },
                                        "name": "currentRow"
                                      },
                                      "init": null
                                    }
                                  ],
                                  "kind": "const"
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 19299,
                                  "end": 19310,
                                  "loc": {
                                    "start": {
                                      "line": 537,
                                      "column": 31
                                    },
                                    "end": {
                                      "line": 537,
                                      "column": 42
                                    },
                                    "identifierName": "currentRows"
                                  },
                                  "name": "currentRows"
                                },
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 19312,
                                  "end": 20263,
                                  "loc": {
                                    "start": {
                                      "line": 537,
                                      "column": 44
                                    },
                                    "end": {
                                      "line": 559,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 19322,
                                      "end": 19427,
                                      "loc": {
                                        "start": {
                                          "line": 538,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 538,
                                          "column": 113
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 19328,
                                          "end": 19426,
                                          "loc": {
                                            "start": {
                                              "line": 538,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 538,
                                              "column": 112
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 19328,
                                            "end": 19334,
                                            "loc": {
                                              "start": {
                                                "line": 538,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 538,
                                                "column": 20
                                              },
                                              "identifierName": "newObj"
                                            },
                                            "name": "newObj"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 19337,
                                            "end": 19426,
                                            "loc": {
                                              "start": {
                                                "line": 538,
                                                "column": 23
                                              },
                                              "end": {
                                                "line": 538,
                                                "column": 112
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 19337,
                                              "end": 19343,
                                              "loc": {
                                                "start": {
                                                  "line": 538,
                                                  "column": 23
                                                },
                                                "end": {
                                                  "line": 538,
                                                  "column": 29
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 19337,
                                                "end": 19338,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 23
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 24
                                                  },
                                                  "identifierName": "_"
                                                },
                                                "name": "_"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 19339,
                                                "end": 19343,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 25
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 29
                                                  },
                                                  "identifierName": "find"
                                                },
                                                "name": "find"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 19344,
                                                "end": 19364,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 50
                                                  },
                                                  "identifierName": "newAssociatedObjects"
                                                },
                                                "name": "newAssociatedObjects"
                                              },
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 19366,
                                                "end": 19425,
                                                "loc": {
                                                  "start": {
                                                    "line": 538,
                                                    "column": 52
                                                  },
                                                  "end": {
                                                    "line": 538,
                                                    "column": 111
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": true,
                                                "async": false,
                                                "params": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 19366,
                                                    "end": 19369,
                                                    "loc": {
                                                      "start": {
                                                        "line": 538,
                                                        "column": 52
                                                      },
                                                      "end": {
                                                        "line": 538,
                                                        "column": 55
                                                      },
                                                      "identifierName": "obj"
                                                    },
                                                    "name": "obj"
                                                  }
                                                ],
                                                "body": {
                                                  "type": "BinaryExpression",
                                                  "start": 19373,
                                                  "end": 19425,
                                                  "loc": {
                                                    "start": {
                                                      "line": 538,
                                                      "column": 59
                                                    },
                                                    "end": {
                                                      "line": 538,
                                                      "column": 111
                                                    }
                                                  },
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 19373,
                                                    "end": 19402,
                                                    "loc": {
                                                      "start": {
                                                        "line": 538,
                                                        "column": 59
                                                      },
                                                      "end": {
                                                        "line": 538,
                                                        "column": 88
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 19373,
                                                      "end": 19383,
                                                      "loc": {
                                                        "start": {
                                                          "line": 538,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 538,
                                                          "column": 69
                                                        },
                                                        "identifierName": "currentRow"
                                                      },
                                                      "name": "currentRow"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 19384,
                                                      "end": 19401,
                                                      "loc": {
                                                        "start": {
                                                          "line": 538,
                                                          "column": 70
                                                        },
                                                        "end": {
                                                          "line": 538,
                                                          "column": 87
                                                        },
                                                        "identifierName": "foreignIdentifier"
                                                      },
                                                      "name": "foreignIdentifier"
                                                    },
                                                    "computed": true
                                                  },
                                                  "operator": "===",
                                                  "right": {
                                                    "type": "CallExpression",
                                                    "start": 19407,
                                                    "end": 19425,
                                                    "loc": {
                                                      "start": {
                                                        "line": 538,
                                                        "column": 93
                                                      },
                                                      "end": {
                                                        "line": 538,
                                                        "column": 111
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 19407,
                                                      "end": 19414,
                                                      "loc": {
                                                        "start": {
                                                          "line": 538,
                                                          "column": 93
                                                        },
                                                        "end": {
                                                          "line": 538,
                                                          "column": 100
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 19407,
                                                        "end": 19410,
                                                        "loc": {
                                                          "start": {
                                                            "line": 538,
                                                            "column": 93
                                                          },
                                                          "end": {
                                                            "line": 538,
                                                            "column": 96
                                                          },
                                                          "identifierName": "obj"
                                                        },
                                                        "name": "obj"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 19411,
                                                        "end": 19414,
                                                        "loc": {
                                                          "start": {
                                                            "line": 538,
                                                            "column": 97
                                                          },
                                                          "end": {
                                                            "line": 538,
                                                            "column": 100
                                                          },
                                                          "identifierName": "get"
                                                        },
                                                        "name": "get"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 19415,
                                                        "end": 19424,
                                                        "loc": {
                                                          "start": {
                                                            "line": 538,
                                                            "column": 101
                                                          },
                                                          "end": {
                                                            "line": 538,
                                                            "column": 110
                                                          },
                                                          "identifierName": "targetKey"
                                                        },
                                                        "name": "targetKey"
                                                      }
                                                    ]
                                                  }
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 19437,
                                      "end": 20255,
                                      "loc": {
                                        "start": {
                                          "line": 540,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 558,
                                          "column": 9
                                        }
                                      },
                                      "test": {
                                        "type": "UnaryExpression",
                                        "start": 19441,
                                        "end": 19448,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 540,
                                            "column": 19
                                          }
                                        },
                                        "operator": "!",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 19442,
                                          "end": 19448,
                                          "loc": {
                                            "start": {
                                              "line": 540,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 540,
                                              "column": 19
                                            },
                                            "identifierName": "newObj"
                                          },
                                          "name": "newObj"
                                        },
                                        "extra": {
                                          "parenthesizedArgument": false
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 19450,
                                        "end": 19510,
                                        "loc": {
                                          "start": {
                                            "line": 540,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 542,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 19462,
                                            "end": 19500,
                                            "loc": {
                                              "start": {
                                                "line": 541,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 541,
                                                "column": 48
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 19462,
                                              "end": 19499,
                                              "loc": {
                                                "start": {
                                                  "line": 541,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 541,
                                                  "column": 47
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 19462,
                                                "end": 19487,
                                                "loc": {
                                                  "start": {
                                                    "line": 541,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 541,
                                                    "column": 35
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 19462,
                                                  "end": 19482,
                                                  "loc": {
                                                    "start": {
                                                      "line": 541,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 541,
                                                      "column": 30
                                                    },
                                                    "identifierName": "obsoleteAssociations"
                                                  },
                                                  "name": "obsoleteAssociations"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 19483,
                                                  "end": 19487,
                                                  "loc": {
                                                    "start": {
                                                      "line": 541,
                                                      "column": 31
                                                    },
                                                    "end": {
                                                      "line": 541,
                                                      "column": 35
                                                    },
                                                    "identifierName": "push"
                                                  },
                                                  "name": "push"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 19488,
                                                  "end": 19498,
                                                  "loc": {
                                                    "start": {
                                                      "line": 541,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 541,
                                                      "column": 46
                                                    },
                                                    "identifierName": "currentRow"
                                                  },
                                                  "name": "currentRow"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "directives": []
                                      },
                                      "alternate": {
                                        "type": "BlockStatement",
                                        "start": 19516,
                                        "end": 20255,
                                        "loc": {
                                          "start": {
                                            "line": 542,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 558,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "VariableDeclaration",
                                            "start": 19528,
                                            "end": 19591,
                                            "loc": {
                                              "start": {
                                                "line": 543,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 543,
                                                "column": 73
                                              }
                                            },
                                            "declarations": [
                                              {
                                                "type": "VariableDeclarator",
                                                "start": 19532,
                                                "end": 19590,
                                                "loc": {
                                                  "start": {
                                                    "line": 543,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 543,
                                                    "column": 72
                                                  }
                                                },
                                                "id": {
                                                  "type": "Identifier",
                                                  "start": 19532,
                                                  "end": 19549,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 31
                                                    },
                                                    "identifierName": "throughAttributes"
                                                  },
                                                  "name": "throughAttributes"
                                                },
                                                "init": {
                                                  "type": "MemberExpression",
                                                  "start": 19552,
                                                  "end": 19590,
                                                  "loc": {
                                                    "start": {
                                                      "line": 543,
                                                      "column": 34
                                                    },
                                                    "end": {
                                                      "line": 543,
                                                      "column": 72
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 19552,
                                                    "end": 19558,
                                                    "loc": {
                                                      "start": {
                                                        "line": 543,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 543,
                                                        "column": 40
                                                      },
                                                      "identifierName": "newObj"
                                                    },
                                                    "name": "newObj"
                                                  },
                                                  "property": {
                                                    "type": "MemberExpression",
                                                    "start": 19559,
                                                    "end": 19589,
                                                    "loc": {
                                                      "start": {
                                                        "line": 543,
                                                        "column": 41
                                                      },
                                                      "end": {
                                                        "line": 543,
                                                        "column": 71
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 19559,
                                                      "end": 19584,
                                                      "loc": {
                                                        "start": {
                                                          "line": 543,
                                                          "column": 41
                                                        },
                                                        "end": {
                                                          "line": 543,
                                                          "column": 66
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 19559,
                                                        "end": 19578,
                                                        "loc": {
                                                          "start": {
                                                            "line": 543,
                                                            "column": 41
                                                          },
                                                          "end": {
                                                            "line": 543,
                                                            "column": 60
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 19559,
                                                          "end": 19570,
                                                          "loc": {
                                                            "start": {
                                                              "line": 543,
                                                              "column": 41
                                                            },
                                                            "end": {
                                                              "line": 543,
                                                              "column": 52
                                                            },
                                                            "identifierName": "association"
                                                          },
                                                          "name": "association"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 19571,
                                                          "end": 19578,
                                                          "loc": {
                                                            "start": {
                                                              "line": 543,
                                                              "column": 53
                                                            },
                                                            "end": {
                                                              "line": 543,
                                                              "column": 60
                                                            },
                                                            "identifierName": "through"
                                                          },
                                                          "name": "through"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 19579,
                                                        "end": 19584,
                                                        "loc": {
                                                          "start": {
                                                            "line": 543,
                                                            "column": 61
                                                          },
                                                          "end": {
                                                            "line": 543,
                                                            "column": 66
                                                          },
                                                          "identifierName": "model"
                                                        },
                                                        "name": "model"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 19585,
                                                      "end": 19589,
                                                      "loc": {
                                                        "start": {
                                                          "line": 543,
                                                          "column": 67
                                                        },
                                                        "end": {
                                                          "line": 543,
                                                          "column": 71
                                                        },
                                                        "identifierName": "name"
                                                      },
                                                      "name": "name"
                                                    },
                                                    "computed": false
                                                  },
                                                  "computed": true
                                                }
                                              }
                                            ],
                                            "kind": "let",
                                            "trailingComments": [
                                              {
                                                "type": "CommentLine",
                                                "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
                                                "start": 19602,
                                                "end": 19729,
                                                "loc": {
                                                  "start": {
                                                    "line": 544,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 544,
                                                    "column": 137
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "type": "IfStatement",
                                            "start": 19740,
                                            "end": 19849,
                                            "loc": {
                                              "start": {
                                                "line": 545,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 547,
                                                "column": 11
                                              }
                                            },
                                            "test": {
                                              "type": "BinaryExpression",
                                              "start": 19744,
                                              "end": 19798,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 545,
                                                  "column": 68
                                                }
                                              },
                                              "left": {
                                                "type": "Identifier",
                                                "start": 19744,
                                                "end": 19761,
                                                "loc": {
                                                  "start": {
                                                    "line": 545,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 545,
                                                    "column": 31
                                                  },
                                                  "identifierName": "throughAttributes"
                                                },
                                                "name": "throughAttributes",
                                                "leadingComments": null
                                              },
                                              "operator": "instanceof",
                                              "right": {
                                                "type": "MemberExpression",
                                                "start": 19773,
                                                "end": 19798,
                                                "loc": {
                                                  "start": {
                                                    "line": 545,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 545,
                                                    "column": 68
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 19773,
                                                  "end": 19792,
                                                  "loc": {
                                                    "start": {
                                                      "line": 545,
                                                      "column": 43
                                                    },
                                                    "end": {
                                                      "line": 545,
                                                      "column": 62
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 19773,
                                                    "end": 19784,
                                                    "loc": {
                                                      "start": {
                                                        "line": 545,
                                                        "column": 43
                                                      },
                                                      "end": {
                                                        "line": 545,
                                                        "column": 54
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 19785,
                                                    "end": 19792,
                                                    "loc": {
                                                      "start": {
                                                        "line": 545,
                                                        "column": 55
                                                      },
                                                      "end": {
                                                        "line": 545,
                                                        "column": 62
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 19793,
                                                  "end": 19798,
                                                  "loc": {
                                                    "start": {
                                                      "line": 545,
                                                      "column": 63
                                                    },
                                                    "end": {
                                                      "line": 545,
                                                      "column": 68
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "leadingComments": null
                                            },
                                            "consequent": {
                                              "type": "BlockStatement",
                                              "start": 19800,
                                              "end": 19849,
                                              "loc": {
                                                "start": {
                                                  "line": 545,
                                                  "column": 70
                                                },
                                                "end": {
                                                  "line": 547,
                                                  "column": 11
                                                }
                                              },
                                              "body": [
                                                {
                                                  "type": "ExpressionStatement",
                                                  "start": 19814,
                                                  "end": 19837,
                                                  "loc": {
                                                    "start": {
                                                      "line": 546,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 546,
                                                      "column": 35
                                                    }
                                                  },
                                                  "expression": {
                                                    "type": "AssignmentExpression",
                                                    "start": 19814,
                                                    "end": 19836,
                                                    "loc": {
                                                      "start": {
                                                        "line": 546,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 546,
                                                        "column": 34
                                                      }
                                                    },
                                                    "operator": "=",
                                                    "left": {
                                                      "type": "Identifier",
                                                      "start": 19814,
                                                      "end": 19831,
                                                      "loc": {
                                                        "start": {
                                                          "line": 546,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 546,
                                                          "column": 29
                                                        },
                                                        "identifierName": "throughAttributes"
                                                      },
                                                      "name": "throughAttributes"
                                                    },
                                                    "right": {
                                                      "type": "ObjectExpression",
                                                      "start": 19834,
                                                      "end": 19836,
                                                      "loc": {
                                                        "start": {
                                                          "line": 546,
                                                          "column": 32
                                                        },
                                                        "end": {
                                                          "line": 546,
                                                          "column": 34
                                                        }
                                                      },
                                                      "properties": []
                                                    }
                                                  }
                                                }
                                              ],
                                              "directives": []
                                            },
                                            "alternate": null,
                                            "leadingComments": [
                                              {
                                                "type": "CommentLine",
                                                "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
                                                "start": 19602,
                                                "end": 19729,
                                                "loc": {
                                                  "start": {
                                                    "line": 544,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 544,
                                                    "column": 137
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "type": "VariableDeclaration",
                                            "start": 19861,
                                            "end": 19878,
                                            "loc": {
                                              "start": {
                                                "line": 549,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 549,
                                                "column": 27
                                              }
                                            },
                                            "declarations": [
                                              {
                                                "type": "VariableDeclarator",
                                                "start": 19867,
                                                "end": 19877,
                                                "loc": {
                                                  "start": {
                                                    "line": 549,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 549,
                                                    "column": 26
                                                  }
                                                },
                                                "id": {
                                                  "type": "Identifier",
                                                  "start": 19867,
                                                  "end": 19872,
                                                  "loc": {
                                                    "start": {
                                                      "line": 549,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 549,
                                                      "column": 21
                                                    },
                                                    "identifierName": "where"
                                                  },
                                                  "name": "where"
                                                },
                                                "init": {
                                                  "type": "ObjectExpression",
                                                  "start": 19875,
                                                  "end": 19877,
                                                  "loc": {
                                                    "start": {
                                                      "line": 549,
                                                      "column": 24
                                                    },
                                                    "end": {
                                                      "line": 549,
                                                      "column": 26
                                                    }
                                                  },
                                                  "properties": []
                                                }
                                              }
                                            ],
                                            "kind": "const"
                                          },
                                          {
                                            "type": "VariableDeclaration",
                                            "start": 19889,
                                            "end": 19961,
                                            "loc": {
                                              "start": {
                                                "line": 550,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 550,
                                                "column": 82
                                              }
                                            },
                                            "declarations": [
                                              {
                                                "type": "VariableDeclarator",
                                                "start": 19895,
                                                "end": 19960,
                                                "loc": {
                                                  "start": {
                                                    "line": 550,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 550,
                                                    "column": 81
                                                  }
                                                },
                                                "id": {
                                                  "type": "Identifier",
                                                  "start": 19895,
                                                  "end": 19905,
                                                  "loc": {
                                                    "start": {
                                                      "line": 550,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 550,
                                                      "column": 26
                                                    },
                                                    "identifierName": "attributes"
                                                  },
                                                  "name": "attributes"
                                                },
                                                "init": {
                                                  "type": "CallExpression",
                                                  "start": 19908,
                                                  "end": 19960,
                                                  "loc": {
                                                    "start": {
                                                      "line": 550,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 550,
                                                      "column": 81
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 19908,
                                                    "end": 19918,
                                                    "loc": {
                                                      "start": {
                                                        "line": 550,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 550,
                                                        "column": 39
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 19908,
                                                      "end": 19909,
                                                      "loc": {
                                                        "start": {
                                                          "line": 550,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 550,
                                                          "column": 30
                                                        },
                                                        "identifierName": "_"
                                                      },
                                                      "name": "_"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 19910,
                                                      "end": 19918,
                                                      "loc": {
                                                        "start": {
                                                          "line": 550,
                                                          "column": 31
                                                        },
                                                        "end": {
                                                          "line": 550,
                                                          "column": 39
                                                        },
                                                        "identifierName": "defaults"
                                                      },
                                                      "name": "defaults"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "ObjectExpression",
                                                      "start": 19919,
                                                      "end": 19921,
                                                      "loc": {
                                                        "start": {
                                                          "line": 550,
                                                          "column": 40
                                                        },
                                                        "end": {
                                                          "line": 550,
                                                          "column": 42
                                                        }
                                                      },
                                                      "properties": []
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 19923,
                                                      "end": 19940,
                                                      "loc": {
                                                        "start": {
                                                          "line": 550,
                                                          "column": 44
                                                        },
                                                        "end": {
                                                          "line": 550,
                                                          "column": 61
                                                        },
                                                        "identifierName": "throughAttributes"
                                                      },
                                                      "name": "throughAttributes"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 19942,
                                                      "end": 19959,
                                                      "loc": {
                                                        "start": {
                                                          "line": 550,
                                                          "column": 63
                                                        },
                                                        "end": {
                                                          "line": 550,
                                                          "column": 80
                                                        },
                                                        "identifierName": "defaultAttributes"
                                                      },
                                                      "name": "defaultAttributes"
                                                    }
                                                  ]
                                                }
                                              }
                                            ],
                                            "kind": "const"
                                          },
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 19973,
                                            "end": 20023,
                                            "loc": {
                                              "start": {
                                                "line": 552,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 552,
                                                "column": 60
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 19973,
                                              "end": 20022,
                                              "loc": {
                                                "start": {
                                                  "line": 552,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 552,
                                                  "column": 59
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 19973,
                                                "end": 19990,
                                                "loc": {
                                                  "start": {
                                                    "line": 552,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 552,
                                                    "column": 27
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 19973,
                                                  "end": 19978,
                                                  "loc": {
                                                    "start": {
                                                      "line": 552,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 552,
                                                      "column": 15
                                                    },
                                                    "identifierName": "where"
                                                  },
                                                  "name": "where"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 19979,
                                                  "end": 19989,
                                                  "loc": {
                                                    "start": {
                                                      "line": 552,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 552,
                                                      "column": 26
                                                    },
                                                    "identifierName": "identifier"
                                                  },
                                                  "name": "identifier"
                                                },
                                                "computed": true
                                              },
                                              "right": {
                                                "type": "CallExpression",
                                                "start": 19993,
                                                "end": 20022,
                                                "loc": {
                                                  "start": {
                                                    "line": 552,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 552,
                                                    "column": 59
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 19993,
                                                  "end": 20011,
                                                  "loc": {
                                                    "start": {
                                                      "line": 552,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 552,
                                                      "column": 48
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 19993,
                                                    "end": 20007,
                                                    "loc": {
                                                      "start": {
                                                        "line": 552,
                                                        "column": 30
                                                      },
                                                      "end": {
                                                        "line": 552,
                                                        "column": 44
                                                      },
                                                      "identifierName": "sourceInstance"
                                                    },
                                                    "name": "sourceInstance"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 20008,
                                                    "end": 20011,
                                                    "loc": {
                                                      "start": {
                                                        "line": 552,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 552,
                                                        "column": 48
                                                      },
                                                      "identifierName": "get"
                                                    },
                                                    "name": "get"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 20012,
                                                    "end": 20021,
                                                    "loc": {
                                                      "start": {
                                                        "line": 552,
                                                        "column": 49
                                                      },
                                                      "end": {
                                                        "line": 552,
                                                        "column": 58
                                                      },
                                                      "identifierName": "sourceKey"
                                                    },
                                                    "name": "sourceKey"
                                                  }
                                                ]
                                              }
                                            }
                                          },
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 20034,
                                            "end": 20083,
                                            "loc": {
                                              "start": {
                                                "line": 553,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 553,
                                                "column": 59
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 20034,
                                              "end": 20082,
                                              "loc": {
                                                "start": {
                                                  "line": 553,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 553,
                                                  "column": 58
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "MemberExpression",
                                                "start": 20034,
                                                "end": 20058,
                                                "loc": {
                                                  "start": {
                                                    "line": 553,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 553,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 20034,
                                                  "end": 20039,
                                                  "loc": {
                                                    "start": {
                                                      "line": 553,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 553,
                                                      "column": 15
                                                    },
                                                    "identifierName": "where"
                                                  },
                                                  "name": "where"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 20040,
                                                  "end": 20057,
                                                  "loc": {
                                                    "start": {
                                                      "line": 553,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 553,
                                                      "column": 33
                                                    },
                                                    "identifierName": "foreignIdentifier"
                                                  },
                                                  "name": "foreignIdentifier"
                                                },
                                                "computed": true
                                              },
                                              "right": {
                                                "type": "CallExpression",
                                                "start": 20061,
                                                "end": 20082,
                                                "loc": {
                                                  "start": {
                                                    "line": 553,
                                                    "column": 37
                                                  },
                                                  "end": {
                                                    "line": 553,
                                                    "column": 58
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 20061,
                                                  "end": 20071,
                                                  "loc": {
                                                    "start": {
                                                      "line": 553,
                                                      "column": 37
                                                    },
                                                    "end": {
                                                      "line": 553,
                                                      "column": 47
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 20061,
                                                    "end": 20067,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 37
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 43
                                                      },
                                                      "identifierName": "newObj"
                                                    },
                                                    "name": "newObj"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 20068,
                                                    "end": 20071,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 44
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 47
                                                      },
                                                      "identifierName": "get"
                                                    },
                                                    "name": "get"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 20072,
                                                    "end": 20081,
                                                    "loc": {
                                                      "start": {
                                                        "line": 553,
                                                        "column": 48
                                                      },
                                                      "end": {
                                                        "line": 553,
                                                        "column": 57
                                                      },
                                                      "identifierName": "targetKey"
                                                    },
                                                    "name": "targetKey"
                                                  }
                                                ]
                                              }
                                            }
                                          },
                                          {
                                            "type": "IfStatement",
                                            "start": 20095,
                                            "end": 20245,
                                            "loc": {
                                              "start": {
                                                "line": 555,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 557,
                                                "column": 11
                                              }
                                            },
                                            "test": {
                                              "type": "MemberExpression",
                                              "start": 20099,
                                              "end": 20129,
                                              "loc": {
                                                "start": {
                                                  "line": 555,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 555,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "CallExpression",
                                                "start": 20099,
                                                "end": 20122,
                                                "loc": {
                                                  "start": {
                                                    "line": 555,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 555,
                                                    "column": 37
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 20099,
                                                  "end": 20110,
                                                  "loc": {
                                                    "start": {
                                                      "line": 555,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 555,
                                                      "column": 25
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 20099,
                                                    "end": 20105,
                                                    "loc": {
                                                      "start": {
                                                        "line": 555,
                                                        "column": 14
                                                      },
                                                      "end": {
                                                        "line": 555,
                                                        "column": 20
                                                      },
                                                      "identifierName": "Object"
                                                    },
                                                    "name": "Object"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 20106,
                                                    "end": 20110,
                                                    "loc": {
                                                      "start": {
                                                        "line": 555,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 555,
                                                        "column": 25
                                                      },
                                                      "identifierName": "keys"
                                                    },
                                                    "name": "keys"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 20111,
                                                    "end": 20121,
                                                    "loc": {
                                                      "start": {
                                                        "line": 555,
                                                        "column": 26
                                                      },
                                                      "end": {
                                                        "line": 555,
                                                        "column": 36
                                                      },
                                                      "identifierName": "attributes"
                                                    },
                                                    "name": "attributes"
                                                  }
                                                ]
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 20123,
                                                "end": 20129,
                                                "loc": {
                                                  "start": {
                                                    "line": 555,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 555,
                                                    "column": 44
                                                  },
                                                  "identifierName": "length"
                                                },
                                                "name": "length"
                                              },
                                              "computed": false
                                            },
                                            "consequent": {
                                              "type": "BlockStatement",
                                              "start": 20131,
                                              "end": 20245,
                                              "loc": {
                                                "start": {
                                                  "line": 555,
                                                  "column": 46
                                                },
                                                "end": {
                                                  "line": 557,
                                                  "column": 11
                                                }
                                              },
                                              "body": [
                                                {
                                                  "type": "ExpressionStatement",
                                                  "start": 20145,
                                                  "end": 20233,
                                                  "loc": {
                                                    "start": {
                                                      "line": 556,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 556,
                                                      "column": 100
                                                    }
                                                  },
                                                  "expression": {
                                                    "type": "CallExpression",
                                                    "start": 20145,
                                                    "end": 20232,
                                                    "loc": {
                                                      "start": {
                                                        "line": 556,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 556,
                                                        "column": 99
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 20145,
                                                      "end": 20158,
                                                      "loc": {
                                                        "start": {
                                                          "line": 556,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 556,
                                                          "column": 25
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 20145,
                                                        "end": 20153,
                                                        "loc": {
                                                          "start": {
                                                            "line": 556,
                                                            "column": 12
                                                          },
                                                          "end": {
                                                            "line": 556,
                                                            "column": 20
                                                          },
                                                          "identifierName": "promises"
                                                        },
                                                        "name": "promises"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 20154,
                                                        "end": 20158,
                                                        "loc": {
                                                          "start": {
                                                            "line": 556,
                                                            "column": 21
                                                          },
                                                          "end": {
                                                            "line": 556,
                                                            "column": 25
                                                          },
                                                          "identifierName": "push"
                                                        },
                                                        "name": "push"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "CallExpression",
                                                        "start": 20159,
                                                        "end": 20231,
                                                        "loc": {
                                                          "start": {
                                                            "line": 556,
                                                            "column": 26
                                                          },
                                                          "end": {
                                                            "line": 556,
                                                            "column": 98
                                                          }
                                                        },
                                                        "callee": {
                                                          "type": "MemberExpression",
                                                          "start": 20159,
                                                          "end": 20191,
                                                          "loc": {
                                                            "start": {
                                                              "line": 556,
                                                              "column": 26
                                                            },
                                                            "end": {
                                                              "line": 556,
                                                              "column": 58
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "MemberExpression",
                                                            "start": 20159,
                                                            "end": 20184,
                                                            "loc": {
                                                              "start": {
                                                                "line": 556,
                                                                "column": 26
                                                              },
                                                              "end": {
                                                                "line": 556,
                                                                "column": 51
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 20159,
                                                              "end": 20178,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 556,
                                                                  "column": 26
                                                                },
                                                                "end": {
                                                                  "line": 556,
                                                                  "column": 45
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 20159,
                                                                "end": 20170,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 26
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 37
                                                                  },
                                                                  "identifierName": "association"
                                                                },
                                                                "name": "association"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 20171,
                                                                "end": 20178,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 38
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 45
                                                                  },
                                                                  "identifierName": "through"
                                                                },
                                                                "name": "through"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 20179,
                                                              "end": 20184,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 556,
                                                                  "column": 46
                                                                },
                                                                "end": {
                                                                  "line": 556,
                                                                  "column": 51
                                                                },
                                                                "identifierName": "model"
                                                              },
                                                              "name": "model"
                                                            },
                                                            "computed": false
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 20185,
                                                            "end": 20191,
                                                            "loc": {
                                                              "start": {
                                                                "line": 556,
                                                                "column": 52
                                                              },
                                                              "end": {
                                                                "line": 556,
                                                                "column": 58
                                                              },
                                                              "identifierName": "update"
                                                            },
                                                            "name": "update"
                                                          },
                                                          "computed": false
                                                        },
                                                        "arguments": [
                                                          {
                                                            "type": "Identifier",
                                                            "start": 20192,
                                                            "end": 20202,
                                                            "loc": {
                                                              "start": {
                                                                "line": 556,
                                                                "column": 59
                                                              },
                                                              "end": {
                                                                "line": 556,
                                                                "column": 69
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          {
                                                            "type": "CallExpression",
                                                            "start": 20204,
                                                            "end": 20230,
                                                            "loc": {
                                                              "start": {
                                                                "line": 556,
                                                                "column": 71
                                                              },
                                                              "end": {
                                                                "line": 556,
                                                                "column": 97
                                                              }
                                                            },
                                                            "callee": {
                                                              "type": "MemberExpression",
                                                              "start": 20204,
                                                              "end": 20212,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 556,
                                                                  "column": 71
                                                                },
                                                                "end": {
                                                                  "line": 556,
                                                                  "column": 79
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 20204,
                                                                "end": 20205,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 71
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 72
                                                                  },
                                                                  "identifierName": "_"
                                                                },
                                                                "name": "_"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 20206,
                                                                "end": 20212,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 73
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 79
                                                                  },
                                                                  "identifierName": "extend"
                                                                },
                                                                "name": "extend"
                                                              },
                                                              "computed": false
                                                            },
                                                            "arguments": [
                                                              {
                                                                "type": "Identifier",
                                                                "start": 20213,
                                                                "end": 20220,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 80
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 87
                                                                  },
                                                                  "identifierName": "options"
                                                                },
                                                                "name": "options"
                                                              },
                                                              {
                                                                "type": "ObjectExpression",
                                                                "start": 20222,
                                                                "end": 20229,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 556,
                                                                    "column": 89
                                                                  },
                                                                  "end": {
                                                                    "line": 556,
                                                                    "column": 96
                                                                  }
                                                                },
                                                                "properties": [
                                                                  {
                                                                    "type": "ObjectProperty",
                                                                    "start": 20223,
                                                                    "end": 20228,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 556,
                                                                        "column": 90
                                                                      },
                                                                      "end": {
                                                                        "line": 556,
                                                                        "column": 95
                                                                      }
                                                                    },
                                                                    "method": false,
                                                                    "shorthand": true,
                                                                    "computed": false,
                                                                    "key": {
                                                                      "type": "Identifier",
                                                                      "start": 20223,
                                                                      "end": 20228,
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 556,
                                                                          "column": 90
                                                                        },
                                                                        "end": {
                                                                          "line": 556,
                                                                          "column": 95
                                                                        },
                                                                        "identifierName": "where"
                                                                      },
                                                                      "name": "where"
                                                                    },
                                                                    "value": {
                                                                      "type": "Identifier",
                                                                      "start": 20223,
                                                                      "end": 20228,
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 556,
                                                                          "column": 90
                                                                        },
                                                                        "end": {
                                                                          "line": 556,
                                                                          "column": 95
                                                                        },
                                                                        "identifierName": "where"
                                                                      },
                                                                      "name": "where"
                                                                    },
                                                                    "extra": {
                                                                      "shorthand": true
                                                                    }
                                                                  }
                                                                ]
                                                              }
                                                            ]
                                                          }
                                                        ]
                                                      }
                                                    ]
                                                  }
                                                }
                                              ],
                                              "directives": []
                                            },
                                            "alternate": null
                                          }
                                        ],
                                        "directives": []
                                      }
                                    }
                                  ],
                                  "directives": []
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 20271,
                                "end": 20615,
                                "loc": {
                                  "start": {
                                    "line": 561,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 567,
                                    "column": 7
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 20275,
                                  "end": 20306,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 561,
                                      "column": 41
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 20275,
                                    "end": 20302,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 37
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20275,
                                      "end": 20295,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 30
                                        },
                                        "identifierName": "obsoleteAssociations"
                                      },
                                      "name": "obsoleteAssociations"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20296,
                                      "end": 20302,
                                      "loc": {
                                        "start": {
                                          "line": 561,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 561,
                                          "column": 37
                                        },
                                        "identifierName": "length"
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 20305,
                                    "end": 20306,
                                    "loc": {
                                      "start": {
                                        "line": 561,
                                        "column": 40
                                      },
                                      "end": {
                                        "line": 561,
                                        "column": 41
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 20308,
                                  "end": 20615,
                                  "loc": {
                                    "start": {
                                      "line": 561,
                                      "column": 43
                                    },
                                    "end": {
                                      "line": 567,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 20318,
                                      "end": 20335,
                                      "loc": {
                                        "start": {
                                          "line": 562,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 562,
                                          "column": 25
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 20324,
                                          "end": 20334,
                                          "loc": {
                                            "start": {
                                              "line": 562,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 562,
                                              "column": 24
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 20324,
                                            "end": 20329,
                                            "loc": {
                                              "start": {
                                                "line": 562,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 562,
                                                "column": 19
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "init": {
                                            "type": "ObjectExpression",
                                            "start": 20332,
                                            "end": 20334,
                                            "loc": {
                                              "start": {
                                                "line": 562,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 562,
                                                "column": 24
                                              }
                                            },
                                            "properties": []
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 20344,
                                      "end": 20394,
                                      "loc": {
                                        "start": {
                                          "line": 563,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 563,
                                          "column": 58
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 20344,
                                        "end": 20393,
                                        "loc": {
                                          "start": {
                                            "line": 563,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 563,
                                            "column": 57
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 20344,
                                          "end": 20361,
                                          "loc": {
                                            "start": {
                                              "line": 563,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 563,
                                              "column": 25
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20344,
                                            "end": 20349,
                                            "loc": {
                                              "start": {
                                                "line": 563,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 563,
                                                "column": 13
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20350,
                                            "end": 20360,
                                            "loc": {
                                              "start": {
                                                "line": 563,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 563,
                                                "column": 24
                                              },
                                              "identifierName": "identifier"
                                            },
                                            "name": "identifier"
                                          },
                                          "computed": true
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 20364,
                                          "end": 20393,
                                          "loc": {
                                            "start": {
                                              "line": 563,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 563,
                                              "column": 57
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 20364,
                                            "end": 20382,
                                            "loc": {
                                              "start": {
                                                "line": 563,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 563,
                                                "column": 46
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 20364,
                                              "end": 20378,
                                              "loc": {
                                                "start": {
                                                  "line": 563,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 563,
                                                  "column": 42
                                                },
                                                "identifierName": "sourceInstance"
                                              },
                                              "name": "sourceInstance"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 20379,
                                              "end": 20382,
                                              "loc": {
                                                "start": {
                                                  "line": 563,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 563,
                                                  "column": 46
                                                },
                                                "identifierName": "get"
                                              },
                                              "name": "get"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 20383,
                                              "end": 20392,
                                              "loc": {
                                                "start": {
                                                  "line": 563,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 563,
                                                  "column": 56
                                                },
                                                "identifierName": "sourceKey"
                                              },
                                              "name": "sourceKey"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 20403,
                                      "end": 20518,
                                      "loc": {
                                        "start": {
                                          "line": 564,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 564,
                                          "column": 123
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 20403,
                                        "end": 20517,
                                        "loc": {
                                          "start": {
                                            "line": 564,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 564,
                                            "column": 122
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 20403,
                                          "end": 20427,
                                          "loc": {
                                            "start": {
                                              "line": 564,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 564,
                                              "column": 32
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20403,
                                            "end": 20408,
                                            "loc": {
                                              "start": {
                                                "line": 564,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 564,
                                                "column": 13
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20409,
                                            "end": 20426,
                                            "loc": {
                                              "start": {
                                                "line": 564,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 564,
                                                "column": 31
                                              },
                                              "identifierName": "foreignIdentifier"
                                            },
                                            "name": "foreignIdentifier"
                                          },
                                          "computed": true
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 20430,
                                          "end": 20517,
                                          "loc": {
                                            "start": {
                                              "line": 564,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 564,
                                              "column": 122
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 20430,
                                            "end": 20454,
                                            "loc": {
                                              "start": {
                                                "line": 564,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 564,
                                                "column": 59
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 20430,
                                              "end": 20450,
                                              "loc": {
                                                "start": {
                                                  "line": 564,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 564,
                                                  "column": 55
                                                },
                                                "identifierName": "obsoleteAssociations"
                                              },
                                              "name": "obsoleteAssociations"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 20451,
                                              "end": 20454,
                                              "loc": {
                                                "start": {
                                                  "line": 564,
                                                  "column": 56
                                                },
                                                "end": {
                                                  "line": 564,
                                                  "column": 59
                                                },
                                                "identifierName": "map"
                                              },
                                              "name": "map"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "ArrowFunctionExpression",
                                              "start": 20455,
                                              "end": 20516,
                                              "loc": {
                                                "start": {
                                                  "line": 564,
                                                  "column": 60
                                                },
                                                "end": {
                                                  "line": 564,
                                                  "column": 121
                                                }
                                              },
                                              "id": null,
                                              "generator": false,
                                              "expression": true,
                                              "async": false,
                                              "params": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 20455,
                                                  "end": 20474,
                                                  "loc": {
                                                    "start": {
                                                      "line": 564,
                                                      "column": 60
                                                    },
                                                    "end": {
                                                      "line": 564,
                                                      "column": 79
                                                    },
                                                    "identifierName": "obsoleteAssociation"
                                                  },
                                                  "name": "obsoleteAssociation"
                                                }
                                              ],
                                              "body": {
                                                "type": "MemberExpression",
                                                "start": 20478,
                                                "end": 20516,
                                                "loc": {
                                                  "start": {
                                                    "line": 564,
                                                    "column": 83
                                                  },
                                                  "end": {
                                                    "line": 564,
                                                    "column": 121
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 20478,
                                                  "end": 20497,
                                                  "loc": {
                                                    "start": {
                                                      "line": 564,
                                                      "column": 83
                                                    },
                                                    "end": {
                                                      "line": 564,
                                                      "column": 102
                                                    },
                                                    "identifierName": "obsoleteAssociation"
                                                  },
                                                  "name": "obsoleteAssociation"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 20498,
                                                  "end": 20515,
                                                  "loc": {
                                                    "start": {
                                                      "line": 564,
                                                      "column": 103
                                                    },
                                                    "end": {
                                                      "line": 564,
                                                      "column": 120
                                                    },
                                                    "identifierName": "foreignIdentifier"
                                                  },
                                                  "name": "foreignIdentifier"
                                                },
                                                "computed": true
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 20528,
                                      "end": 20607,
                                      "loc": {
                                        "start": {
                                          "line": 566,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 566,
                                          "column": 87
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 20528,
                                        "end": 20606,
                                        "loc": {
                                          "start": {
                                            "line": 566,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 566,
                                            "column": 86
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 20528,
                                          "end": 20541,
                                          "loc": {
                                            "start": {
                                              "line": 566,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 566,
                                              "column": 21
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 20528,
                                            "end": 20536,
                                            "loc": {
                                              "start": {
                                                "line": 566,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 566,
                                                "column": 16
                                              },
                                              "identifierName": "promises"
                                            },
                                            "name": "promises"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 20537,
                                            "end": 20541,
                                            "loc": {
                                              "start": {
                                                "line": 566,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 566,
                                                "column": 21
                                              },
                                              "identifierName": "push"
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 20542,
                                            "end": 20605,
                                            "loc": {
                                              "start": {
                                                "line": 566,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 566,
                                                "column": 85
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 20542,
                                              "end": 20575,
                                              "loc": {
                                                "start": {
                                                  "line": 566,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 566,
                                                  "column": 55
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 20542,
                                                "end": 20567,
                                                "loc": {
                                                  "start": {
                                                    "line": 566,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 566,
                                                    "column": 47
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 20542,
                                                  "end": 20561,
                                                  "loc": {
                                                    "start": {
                                                      "line": 566,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 566,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 20542,
                                                    "end": 20553,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 33
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 20554,
                                                    "end": 20561,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 41
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 20562,
                                                  "end": 20567,
                                                  "loc": {
                                                    "start": {
                                                      "line": 566,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 566,
                                                      "column": 47
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 20568,
                                                "end": 20575,
                                                "loc": {
                                                  "start": {
                                                    "line": 566,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 566,
                                                    "column": 55
                                                  },
                                                  "identifierName": "destroy"
                                                },
                                                "name": "destroy"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "CallExpression",
                                                "start": 20576,
                                                "end": 20604,
                                                "loc": {
                                                  "start": {
                                                    "line": 566,
                                                    "column": 56
                                                  },
                                                  "end": {
                                                    "line": 566,
                                                    "column": 84
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 20576,
                                                  "end": 20586,
                                                  "loc": {
                                                    "start": {
                                                      "line": 566,
                                                      "column": 56
                                                    },
                                                    "end": {
                                                      "line": 566,
                                                      "column": 66
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 20576,
                                                    "end": 20577,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 57
                                                      },
                                                      "identifierName": "_"
                                                    },
                                                    "name": "_"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 20578,
                                                    "end": 20586,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 58
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 66
                                                      },
                                                      "identifierName": "defaults"
                                                    },
                                                    "name": "defaults"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "ObjectExpression",
                                                    "start": 20587,
                                                    "end": 20594,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 67
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 74
                                                      }
                                                    },
                                                    "properties": [
                                                      {
                                                        "type": "ObjectProperty",
                                                        "start": 20588,
                                                        "end": 20593,
                                                        "loc": {
                                                          "start": {
                                                            "line": 566,
                                                            "column": 68
                                                          },
                                                          "end": {
                                                            "line": 566,
                                                            "column": 73
                                                          }
                                                        },
                                                        "method": false,
                                                        "shorthand": true,
                                                        "computed": false,
                                                        "key": {
                                                          "type": "Identifier",
                                                          "start": 20588,
                                                          "end": 20593,
                                                          "loc": {
                                                            "start": {
                                                              "line": 566,
                                                              "column": 68
                                                            },
                                                            "end": {
                                                              "line": 566,
                                                              "column": 73
                                                            },
                                                            "identifierName": "where"
                                                          },
                                                          "name": "where"
                                                        },
                                                        "value": {
                                                          "type": "Identifier",
                                                          "start": 20588,
                                                          "end": 20593,
                                                          "loc": {
                                                            "start": {
                                                              "line": 566,
                                                              "column": 68
                                                            },
                                                            "end": {
                                                              "line": 566,
                                                              "column": 73
                                                            },
                                                            "identifierName": "where"
                                                          },
                                                          "name": "where"
                                                        },
                                                        "extra": {
                                                          "shorthand": true
                                                        }
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 20596,
                                                    "end": 20603,
                                                    "loc": {
                                                      "start": {
                                                        "line": 566,
                                                        "column": 76
                                                      },
                                                      "end": {
                                                        "line": 566,
                                                        "column": 83
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "IfStatement",
                                "start": 20623,
                                "end": 21240,
                                "loc": {
                                  "start": {
                                    "line": 569,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 584,
                                    "column": 7
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 20627,
                                  "end": 20657,
                                  "loc": {
                                    "start": {
                                      "line": 569,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 569,
                                      "column": 40
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 20627,
                                    "end": 20653,
                                    "loc": {
                                      "start": {
                                        "line": 569,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 569,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 20627,
                                      "end": 20646,
                                      "loc": {
                                        "start": {
                                          "line": 569,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 569,
                                          "column": 29
                                        },
                                        "identifierName": "unassociatedObjects"
                                      },
                                      "name": "unassociatedObjects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 20647,
                                      "end": 20653,
                                      "loc": {
                                        "start": {
                                          "line": 569,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 569,
                                          "column": 36
                                        },
                                        "identifierName": "length"
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 20656,
                                    "end": 20657,
                                    "loc": {
                                      "start": {
                                        "line": 569,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 569,
                                        "column": 40
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 20659,
                                  "end": 21240,
                                  "loc": {
                                    "start": {
                                      "line": 569,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 584,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 20669,
                                      "end": 21125,
                                      "loc": {
                                        "start": {
                                          "line": 570,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 581,
                                          "column": 11
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 20675,
                                          "end": 21124,
                                          "loc": {
                                            "start": {
                                              "line": 570,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 581,
                                              "column": 10
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 20675,
                                            "end": 20679,
                                            "loc": {
                                              "start": {
                                                "line": 570,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 570,
                                                "column": 18
                                              },
                                              "identifierName": "bulk"
                                            },
                                            "name": "bulk"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 20682,
                                            "end": 21124,
                                            "loc": {
                                              "start": {
                                                "line": 570,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 581,
                                                "column": 10
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 20682,
                                              "end": 20705,
                                              "loc": {
                                                "start": {
                                                  "line": 570,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 570,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 20682,
                                                "end": 20701,
                                                "loc": {
                                                  "start": {
                                                    "line": 570,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 570,
                                                    "column": 40
                                                  },
                                                  "identifierName": "unassociatedObjects"
                                                },
                                                "name": "unassociatedObjects"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 20702,
                                                "end": 20705,
                                                "loc": {
                                                  "start": {
                                                    "line": 570,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 570,
                                                    "column": 44
                                                  },
                                                  "identifierName": "map"
                                                },
                                                "name": "map"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 20706,
                                                "end": 21123,
                                                "loc": {
                                                  "start": {
                                                    "line": 570,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 581,
                                                    "column": 9
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": false,
                                                "async": false,
                                                "params": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 20706,
                                                    "end": 20724,
                                                    "loc": {
                                                      "start": {
                                                        "line": 570,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 570,
                                                        "column": 63
                                                      },
                                                      "identifierName": "unassociatedObject"
                                                    },
                                                    "name": "unassociatedObject"
                                                  }
                                                ],
                                                "body": {
                                                  "type": "BlockStatement",
                                                  "start": 20728,
                                                  "end": 21123,
                                                  "loc": {
                                                    "start": {
                                                      "line": 570,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 581,
                                                      "column": 9
                                                    }
                                                  },
                                                  "body": [
                                                    {
                                                      "type": "VariableDeclaration",
                                                      "start": 20740,
                                                      "end": 20760,
                                                      "loc": {
                                                        "start": {
                                                          "line": 571,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 571,
                                                          "column": 30
                                                        }
                                                      },
                                                      "declarations": [
                                                        {
                                                          "type": "VariableDeclarator",
                                                          "start": 20744,
                                                          "end": 20759,
                                                          "loc": {
                                                            "start": {
                                                              "line": 571,
                                                              "column": 14
                                                            },
                                                            "end": {
                                                              "line": 571,
                                                              "column": 29
                                                            }
                                                          },
                                                          "id": {
                                                            "type": "Identifier",
                                                            "start": 20744,
                                                            "end": 20754,
                                                            "loc": {
                                                              "start": {
                                                                "line": 571,
                                                                "column": 14
                                                              },
                                                              "end": {
                                                                "line": 571,
                                                                "column": 24
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "init": {
                                                            "type": "ObjectExpression",
                                                            "start": 20757,
                                                            "end": 20759,
                                                            "loc": {
                                                              "start": {
                                                                "line": 571,
                                                                "column": 27
                                                              },
                                                              "end": {
                                                                "line": 571,
                                                                "column": 29
                                                              }
                                                            },
                                                            "properties": []
                                                          }
                                                        }
                                                      ],
                                                      "kind": "let"
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 20772,
                                                      "end": 20827,
                                                      "loc": {
                                                        "start": {
                                                          "line": 573,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 573,
                                                          "column": 65
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "AssignmentExpression",
                                                        "start": 20772,
                                                        "end": 20826,
                                                        "loc": {
                                                          "start": {
                                                            "line": 573,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 573,
                                                            "column": 64
                                                          }
                                                        },
                                                        "operator": "=",
                                                        "left": {
                                                          "type": "MemberExpression",
                                                          "start": 20772,
                                                          "end": 20794,
                                                          "loc": {
                                                            "start": {
                                                              "line": 573,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 573,
                                                              "column": 32
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 20772,
                                                            "end": 20782,
                                                            "loc": {
                                                              "start": {
                                                                "line": 573,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 573,
                                                                "column": 20
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 20783,
                                                            "end": 20793,
                                                            "loc": {
                                                              "start": {
                                                                "line": 573,
                                                                "column": 21
                                                              },
                                                              "end": {
                                                                "line": 573,
                                                                "column": 31
                                                              },
                                                              "identifierName": "identifier"
                                                            },
                                                            "name": "identifier"
                                                          },
                                                          "computed": true
                                                        },
                                                        "right": {
                                                          "type": "CallExpression",
                                                          "start": 20797,
                                                          "end": 20826,
                                                          "loc": {
                                                            "start": {
                                                              "line": 573,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 573,
                                                              "column": 64
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 20797,
                                                            "end": 20815,
                                                            "loc": {
                                                              "start": {
                                                                "line": 573,
                                                                "column": 35
                                                              },
                                                              "end": {
                                                                "line": 573,
                                                                "column": 53
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 20797,
                                                              "end": 20811,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 573,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 573,
                                                                  "column": 49
                                                                },
                                                                "identifierName": "sourceInstance"
                                                              },
                                                              "name": "sourceInstance"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 20812,
                                                              "end": 20815,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 573,
                                                                  "column": 50
                                                                },
                                                                "end": {
                                                                  "line": 573,
                                                                  "column": 53
                                                                },
                                                                "identifierName": "get"
                                                              },
                                                              "name": "get"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 20816,
                                                              "end": 20825,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 573,
                                                                  "column": 54
                                                                },
                                                                "end": {
                                                                  "line": 573,
                                                                  "column": 63
                                                                },
                                                                "identifierName": "sourceKey"
                                                              },
                                                              "name": "sourceKey"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 20838,
                                                      "end": 20904,
                                                      "loc": {
                                                        "start": {
                                                          "line": 574,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 574,
                                                          "column": 76
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "AssignmentExpression",
                                                        "start": 20838,
                                                        "end": 20903,
                                                        "loc": {
                                                          "start": {
                                                            "line": 574,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 574,
                                                            "column": 75
                                                          }
                                                        },
                                                        "operator": "=",
                                                        "left": {
                                                          "type": "MemberExpression",
                                                          "start": 20838,
                                                          "end": 20867,
                                                          "loc": {
                                                            "start": {
                                                              "line": 574,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 574,
                                                              "column": 39
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 20838,
                                                            "end": 20848,
                                                            "loc": {
                                                              "start": {
                                                                "line": 574,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 574,
                                                                "column": 20
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 20849,
                                                            "end": 20866,
                                                            "loc": {
                                                              "start": {
                                                                "line": 574,
                                                                "column": 21
                                                              },
                                                              "end": {
                                                                "line": 574,
                                                                "column": 38
                                                              },
                                                              "identifierName": "foreignIdentifier"
                                                            },
                                                            "name": "foreignIdentifier"
                                                          },
                                                          "computed": true
                                                        },
                                                        "right": {
                                                          "type": "CallExpression",
                                                          "start": 20870,
                                                          "end": 20903,
                                                          "loc": {
                                                            "start": {
                                                              "line": 574,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 574,
                                                              "column": 75
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 20870,
                                                            "end": 20892,
                                                            "loc": {
                                                              "start": {
                                                                "line": 574,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 574,
                                                                "column": 64
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 20870,
                                                              "end": 20888,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 574,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 574,
                                                                  "column": 60
                                                                },
                                                                "identifierName": "unassociatedObject"
                                                              },
                                                              "name": "unassociatedObject"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 20889,
                                                              "end": 20892,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 574,
                                                                  "column": 61
                                                                },
                                                                "end": {
                                                                  "line": 574,
                                                                  "column": 64
                                                                },
                                                                "identifierName": "get"
                                                              },
                                                              "name": "get"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 20893,
                                                              "end": 20902,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 574,
                                                                  "column": 65
                                                                },
                                                                "end": {
                                                                  "line": 574,
                                                                  "column": 74
                                                                },
                                                                "identifierName": "targetKey"
                                                              },
                                                              "name": "targetKey"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 20916,
                                                      "end": 21023,
                                                      "loc": {
                                                        "start": {
                                                          "line": 576,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 576,
                                                          "column": 117
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "AssignmentExpression",
                                                        "start": 20916,
                                                        "end": 21022,
                                                        "loc": {
                                                          "start": {
                                                            "line": 576,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 576,
                                                            "column": 116
                                                          }
                                                        },
                                                        "operator": "=",
                                                        "left": {
                                                          "type": "Identifier",
                                                          "start": 20916,
                                                          "end": 20926,
                                                          "loc": {
                                                            "start": {
                                                              "line": 576,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 576,
                                                              "column": 20
                                                            },
                                                            "identifierName": "attributes"
                                                          },
                                                          "name": "attributes"
                                                        },
                                                        "right": {
                                                          "type": "CallExpression",
                                                          "start": 20929,
                                                          "end": 21022,
                                                          "loc": {
                                                            "start": {
                                                              "line": 576,
                                                              "column": 23
                                                            },
                                                            "end": {
                                                              "line": 576,
                                                              "column": 116
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 20929,
                                                            "end": 20939,
                                                            "loc": {
                                                              "start": {
                                                                "line": 576,
                                                                "column": 23
                                                              },
                                                              "end": {
                                                                "line": 576,
                                                                "column": 33
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 20929,
                                                              "end": 20930,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 576,
                                                                  "column": 23
                                                                },
                                                                "end": {
                                                                  "line": 576,
                                                                  "column": 24
                                                                },
                                                                "identifierName": "_"
                                                              },
                                                              "name": "_"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 20931,
                                                              "end": 20939,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 576,
                                                                  "column": 25
                                                                },
                                                                "end": {
                                                                  "line": 576,
                                                                  "column": 33
                                                                },
                                                                "identifierName": "defaults"
                                                              },
                                                              "name": "defaults"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 20940,
                                                              "end": 20950,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 576,
                                                                  "column": 34
                                                                },
                                                                "end": {
                                                                  "line": 576,
                                                                  "column": 44
                                                                },
                                                                "identifierName": "attributes"
                                                              },
                                                              "name": "attributes"
                                                            },
                                                            {
                                                              "type": "MemberExpression",
                                                              "start": 20952,
                                                              "end": 21002,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 576,
                                                                  "column": 46
                                                                },
                                                                "end": {
                                                                  "line": 576,
                                                                  "column": 96
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 20952,
                                                                "end": 20970,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 576,
                                                                    "column": 46
                                                                  },
                                                                  "end": {
                                                                    "line": 576,
                                                                    "column": 64
                                                                  },
                                                                  "identifierName": "unassociatedObject"
                                                                },
                                                                "name": "unassociatedObject"
                                                              },
                                                              "property": {
                                                                "type": "MemberExpression",
                                                                "start": 20971,
                                                                "end": 21001,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 576,
                                                                    "column": 65
                                                                  },
                                                                  "end": {
                                                                    "line": 576,
                                                                    "column": 95
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 20971,
                                                                  "end": 20996,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 576,
                                                                      "column": 65
                                                                    },
                                                                    "end": {
                                                                      "line": 576,
                                                                      "column": 90
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "MemberExpression",
                                                                    "start": 20971,
                                                                    "end": 20990,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 576,
                                                                        "column": 65
                                                                      },
                                                                      "end": {
                                                                        "line": 576,
                                                                        "column": 84
                                                                      }
                                                                    },
                                                                    "object": {
                                                                      "type": "Identifier",
                                                                      "start": 20971,
                                                                      "end": 20982,
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 576,
                                                                          "column": 65
                                                                        },
                                                                        "end": {
                                                                          "line": 576,
                                                                          "column": 76
                                                                        },
                                                                        "identifierName": "association"
                                                                      },
                                                                      "name": "association"
                                                                    },
                                                                    "property": {
                                                                      "type": "Identifier",
                                                                      "start": 20983,
                                                                      "end": 20990,
                                                                      "loc": {
                                                                        "start": {
                                                                          "line": 576,
                                                                          "column": 77
                                                                        },
                                                                        "end": {
                                                                          "line": 576,
                                                                          "column": 84
                                                                        },
                                                                        "identifierName": "through"
                                                                      },
                                                                      "name": "through"
                                                                    },
                                                                    "computed": false
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 20991,
                                                                    "end": 20996,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 576,
                                                                        "column": 85
                                                                      },
                                                                      "end": {
                                                                        "line": 576,
                                                                        "column": 90
                                                                      },
                                                                      "identifierName": "model"
                                                                    },
                                                                    "name": "model"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 20997,
                                                                  "end": 21001,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 576,
                                                                      "column": 91
                                                                    },
                                                                    "end": {
                                                                      "line": 576,
                                                                      "column": 95
                                                                    },
                                                                    "identifierName": "name"
                                                                  },
                                                                  "name": "name"
                                                                },
                                                                "computed": false
                                                              },
                                                              "computed": true
                                                            },
                                                            {
                                                              "type": "Identifier",
                                                              "start": 21004,
                                                              "end": 21021,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 576,
                                                                  "column": 98
                                                                },
                                                                "end": {
                                                                  "line": 576,
                                                                  "column": 115
                                                                },
                                                                "identifierName": "defaultAttributes"
                                                              },
                                                              "name": "defaultAttributes"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 21035,
                                                      "end": 21083,
                                                      "loc": {
                                                        "start": {
                                                          "line": 578,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 578,
                                                          "column": 58
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "CallExpression",
                                                        "start": 21035,
                                                        "end": 21082,
                                                        "loc": {
                                                          "start": {
                                                            "line": 578,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 578,
                                                            "column": 57
                                                          }
                                                        },
                                                        "callee": {
                                                          "type": "MemberExpression",
                                                          "start": 21035,
                                                          "end": 21043,
                                                          "loc": {
                                                            "start": {
                                                              "line": 578,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 578,
                                                              "column": 18
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 21035,
                                                            "end": 21036,
                                                            "loc": {
                                                              "start": {
                                                                "line": 578,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 578,
                                                                "column": 11
                                                              },
                                                              "identifierName": "_"
                                                            },
                                                            "name": "_"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 21037,
                                                            "end": 21043,
                                                            "loc": {
                                                              "start": {
                                                                "line": 578,
                                                                "column": 12
                                                              },
                                                              "end": {
                                                                "line": 578,
                                                                "column": 18
                                                              },
                                                              "identifierName": "assign"
                                                            },
                                                            "name": "assign"
                                                          },
                                                          "computed": false
                                                        },
                                                        "arguments": [
                                                          {
                                                            "type": "Identifier",
                                                            "start": 21044,
                                                            "end": 21054,
                                                            "loc": {
                                                              "start": {
                                                                "line": 578,
                                                                "column": 19
                                                              },
                                                              "end": {
                                                                "line": 578,
                                                                "column": 29
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          {
                                                            "type": "MemberExpression",
                                                            "start": 21056,
                                                            "end": 21081,
                                                            "loc": {
                                                              "start": {
                                                                "line": 578,
                                                                "column": 31
                                                              },
                                                              "end": {
                                                                "line": 578,
                                                                "column": 56
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 21056,
                                                              "end": 21075,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 578,
                                                                  "column": 31
                                                                },
                                                                "end": {
                                                                  "line": 578,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 21056,
                                                                "end": 21067,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 578,
                                                                    "column": 31
                                                                  },
                                                                  "end": {
                                                                    "line": 578,
                                                                    "column": 42
                                                                  },
                                                                  "identifierName": "association"
                                                                },
                                                                "name": "association"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 21068,
                                                                "end": 21075,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 578,
                                                                    "column": 43
                                                                  },
                                                                  "end": {
                                                                    "line": 578,
                                                                    "column": 50
                                                                  },
                                                                  "identifierName": "through"
                                                                },
                                                                "name": "through"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 21076,
                                                              "end": 21081,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 578,
                                                                  "column": 51
                                                                },
                                                                "end": {
                                                                  "line": 578,
                                                                  "column": 56
                                                                },
                                                                "identifierName": "scope"
                                                              },
                                                              "name": "scope"
                                                            },
                                                            "computed": false
                                                          }
                                                        ]
                                                      }
                                                    },
                                                    {
                                                      "type": "ReturnStatement",
                                                      "start": 21095,
                                                      "end": 21113,
                                                      "loc": {
                                                        "start": {
                                                          "line": 580,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 580,
                                                          "column": 28
                                                        }
                                                      },
                                                      "argument": {
                                                        "type": "Identifier",
                                                        "start": 21102,
                                                        "end": 21112,
                                                        "loc": {
                                                          "start": {
                                                            "line": 580,
                                                            "column": 17
                                                          },
                                                          "end": {
                                                            "line": 580,
                                                            "column": 27
                                                          },
                                                          "identifierName": "attributes"
                                                        },
                                                        "name": "attributes"
                                                      }
                                                    }
                                                  ],
                                                  "directives": []
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 21135,
                                      "end": 21232,
                                      "loc": {
                                        "start": {
                                          "line": 583,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 583,
                                          "column": 105
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 21135,
                                        "end": 21231,
                                        "loc": {
                                          "start": {
                                            "line": 583,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 583,
                                            "column": 104
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 21135,
                                          "end": 21148,
                                          "loc": {
                                            "start": {
                                              "line": 583,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 583,
                                              "column": 21
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 21135,
                                            "end": 21143,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 16
                                              },
                                              "identifierName": "promises"
                                            },
                                            "name": "promises"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 21144,
                                            "end": 21148,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 21
                                              },
                                              "identifierName": "push"
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 21149,
                                            "end": 21230,
                                            "loc": {
                                              "start": {
                                                "line": 583,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 583,
                                                "column": 103
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 21149,
                                              "end": 21185,
                                              "loc": {
                                                "start": {
                                                  "line": 583,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 583,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 21149,
                                                "end": 21174,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 47
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 21149,
                                                  "end": 21168,
                                                  "loc": {
                                                    "start": {
                                                      "line": 583,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 583,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 21149,
                                                    "end": 21160,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 33
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 21161,
                                                    "end": 21168,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 41
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 21169,
                                                  "end": 21174,
                                                  "loc": {
                                                    "start": {
                                                      "line": 583,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 583,
                                                      "column": 47
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 21175,
                                                "end": 21185,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 58
                                                  },
                                                  "identifierName": "bulkCreate"
                                                },
                                                "name": "bulkCreate"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 21186,
                                                "end": 21190,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 63
                                                  },
                                                  "identifierName": "bulk"
                                                },
                                                "name": "bulk"
                                              },
                                              {
                                                "type": "CallExpression",
                                                "start": 21192,
                                                "end": 21229,
                                                "loc": {
                                                  "start": {
                                                    "line": 583,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 583,
                                                    "column": 102
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 21192,
                                                  "end": 21200,
                                                  "loc": {
                                                    "start": {
                                                      "line": 583,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 583,
                                                      "column": 73
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 21192,
                                                    "end": 21193,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 66
                                                      },
                                                      "identifierName": "_"
                                                    },
                                                    "name": "_"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 21194,
                                                    "end": 21200,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 67
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 73
                                                      },
                                                      "identifierName": "assign"
                                                    },
                                                    "name": "assign"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "ObjectExpression",
                                                    "start": 21201,
                                                    "end": 21219,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 74
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 92
                                                      }
                                                    },
                                                    "properties": [
                                                      {
                                                        "type": "ObjectProperty",
                                                        "start": 21203,
                                                        "end": 21217,
                                                        "loc": {
                                                          "start": {
                                                            "line": 583,
                                                            "column": 76
                                                          },
                                                          "end": {
                                                            "line": 583,
                                                            "column": 90
                                                          }
                                                        },
                                                        "method": false,
                                                        "shorthand": false,
                                                        "computed": false,
                                                        "key": {
                                                          "type": "Identifier",
                                                          "start": 21203,
                                                          "end": 21211,
                                                          "loc": {
                                                            "start": {
                                                              "line": 583,
                                                              "column": 76
                                                            },
                                                            "end": {
                                                              "line": 583,
                                                              "column": 84
                                                            },
                                                            "identifierName": "validate"
                                                          },
                                                          "name": "validate"
                                                        },
                                                        "value": {
                                                          "type": "BooleanLiteral",
                                                          "start": 21213,
                                                          "end": 21217,
                                                          "loc": {
                                                            "start": {
                                                              "line": 583,
                                                              "column": 86
                                                            },
                                                            "end": {
                                                              "line": 583,
                                                              "column": 90
                                                            }
                                                          },
                                                          "value": true
                                                        }
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 21221,
                                                    "end": 21228,
                                                    "loc": {
                                                      "start": {
                                                        "line": 583,
                                                        "column": 94
                                                      },
                                                      "end": {
                                                        "line": 583,
                                                        "column": 101
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 21248,
                                "end": 21283,
                                "loc": {
                                  "start": {
                                    "line": 586,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 586,
                                    "column": 41
                                  }
                                },
                                "argument": {
                                  "type": "CallExpression",
                                  "start": 21255,
                                  "end": 21282,
                                  "loc": {
                                    "start": {
                                      "line": 586,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 586,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 21255,
                                    "end": 21272,
                                    "loc": {
                                      "start": {
                                        "line": 586,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 586,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 21255,
                                      "end": 21268,
                                      "loc": {
                                        "start": {
                                          "line": 586,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 586,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 21255,
                                        "end": 21260,
                                        "loc": {
                                          "start": {
                                            "line": 586,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 586,
                                            "column": 18
                                          },
                                          "identifierName": "Utils"
                                        },
                                        "name": "Utils"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 21261,
                                        "end": 21268,
                                        "loc": {
                                          "start": {
                                            "line": 586,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 586,
                                            "column": 26
                                          },
                                          "identifierName": "Promise"
                                        },
                                        "name": "Promise"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 21269,
                                      "end": 21272,
                                      "loc": {
                                        "start": {
                                          "line": 586,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 586,
                                          "column": 30
                                        },
                                        "identifierName": "all"
                                      },
                                      "name": "all"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 21273,
                                      "end": 21281,
                                      "loc": {
                                        "start": {
                                          "line": 586,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 586,
                                          "column": 39
                                        },
                                        "identifierName": "promises"
                                      },
                                      "name": "promises"
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Set the associated models by passing an array of instances or their primary keys. Everything that it not in the passed array will be un-associated.\n   *\n   * @param {Array<Model|String|Number>} [newAssociations] An array of persisted instances or primary key of instances to associate with this. Pass `null` or `undefined` to remove all associations.\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate`, `update` and `destroy`\n   * @param {Object} [options.validate] Run validation for the join model\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
                  "start": 17333,
                  "end": 17981,
                  "loc": {
                    "start": {
                      "line": 497,
                      "column": 2
                    },
                    "end": {
                      "line": 505,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Associate one ore several rows with `this`.\n   *\n   * @param {Model[]|Model|string[]|string|number[]|Number} [newAssociation(s)] A single instance or primary key, or a mixed array of persisted instances or primary keys\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate` and `update`\n   * @param {Object} [options.validate] Run validation for the join model.\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
                  "start": 21299,
                  "end": 21805,
                  "loc": {
                    "start": {
                      "line": 590,
                      "column": 2
                    },
                    "end": {
                      "line": 598,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 21808,
              "end": 24919,
              "loc": {
                "start": {
                  "line": 599,
                  "column": 2
                },
                "end": {
                  "line": 672,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 21808,
                "end": 21811,
                "loc": {
                  "start": {
                    "line": 599,
                    "column": 2
                  },
                  "end": {
                    "line": 599,
                    "column": 5
                  },
                  "identifierName": "add"
                },
                "name": "add",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 21812,
                  "end": 21826,
                  "loc": {
                    "start": {
                      "line": 599,
                      "column": 6
                    },
                    "end": {
                      "line": 599,
                      "column": 20
                    },
                    "identifierName": "sourceInstance"
                  },
                  "name": "sourceInstance"
                },
                {
                  "type": "Identifier",
                  "start": 21828,
                  "end": 21840,
                  "loc": {
                    "start": {
                      "line": 599,
                      "column": 22
                    },
                    "end": {
                      "line": 599,
                      "column": 34
                    },
                    "identifierName": "newInstances"
                  },
                  "name": "newInstances"
                },
                {
                  "type": "Identifier",
                  "start": 21842,
                  "end": 21849,
                  "loc": {
                    "start": {
                      "line": 599,
                      "column": 36
                    },
                    "end": {
                      "line": 599,
                      "column": 43
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 21851,
                "end": 24919,
                "loc": {
                  "start": {
                    "line": 599,
                    "column": 45
                  },
                  "end": {
                    "line": 672,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "IfStatement",
                    "start": 21908,
                    "end": 21958,
                    "loc": {
                      "start": {
                        "line": 601,
                        "column": 4
                      },
                      "end": {
                        "line": 601,
                        "column": 54
                      }
                    },
                    "test": {
                      "type": "UnaryExpression",
                      "start": 21912,
                      "end": 21925,
                      "loc": {
                        "start": {
                          "line": 601,
                          "column": 8
                        },
                        "end": {
                          "line": 601,
                          "column": 21
                        }
                      },
                      "operator": "!",
                      "prefix": true,
                      "argument": {
                        "type": "Identifier",
                        "start": 21913,
                        "end": 21925,
                        "loc": {
                          "start": {
                            "line": 601,
                            "column": 9
                          },
                          "end": {
                            "line": 601,
                            "column": 21
                          },
                          "identifierName": "newInstances"
                        },
                        "name": "newInstances",
                        "leadingComments": null
                      },
                      "extra": {
                        "parenthesizedArgument": false
                      },
                      "leadingComments": null
                    },
                    "consequent": {
                      "type": "ReturnStatement",
                      "start": 21927,
                      "end": 21958,
                      "loc": {
                        "start": {
                          "line": 601,
                          "column": 23
                        },
                        "end": {
                          "line": 601,
                          "column": 54
                        }
                      },
                      "argument": {
                        "type": "CallExpression",
                        "start": 21934,
                        "end": 21957,
                        "loc": {
                          "start": {
                            "line": 601,
                            "column": 30
                          },
                          "end": {
                            "line": 601,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 21934,
                          "end": 21955,
                          "loc": {
                            "start": {
                              "line": 601,
                              "column": 30
                            },
                            "end": {
                              "line": 601,
                              "column": 51
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 21934,
                            "end": 21947,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 30
                              },
                              "end": {
                                "line": 601,
                                "column": 43
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 21934,
                              "end": 21939,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 30
                                },
                                "end": {
                                  "line": 601,
                                  "column": 35
                                },
                                "identifierName": "Utils"
                              },
                              "name": "Utils"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21940,
                              "end": 21947,
                              "loc": {
                                "start": {
                                  "line": 601,
                                  "column": 36
                                },
                                "end": {
                                  "line": 601,
                                  "column": 43
                                },
                                "identifierName": "Promise"
                              },
                              "name": "Promise"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 21948,
                            "end": 21955,
                            "loc": {
                              "start": {
                                "line": 601,
                                "column": 44
                              },
                              "end": {
                                "line": 601,
                                "column": 51
                              },
                              "identifierName": "resolve"
                            },
                            "name": "resolve"
                          },
                          "computed": false
                        },
                        "arguments": []
                      }
                    },
                    "alternate": null,
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " If newInstances is null or undefined, no-op",
                        "start": 21857,
                        "end": 21903,
                        "loc": {
                          "start": {
                            "line": 600,
                            "column": 4
                          },
                          "end": {
                            "line": 600,
                            "column": 50
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 21964,
                    "end": 21997,
                    "loc": {
                      "start": {
                        "line": 603,
                        "column": 4
                      },
                      "end": {
                        "line": 603,
                        "column": 37
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 21964,
                      "end": 21996,
                      "loc": {
                        "start": {
                          "line": 603,
                          "column": 4
                        },
                        "end": {
                          "line": 603,
                          "column": 36
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 21964,
                        "end": 21971,
                        "loc": {
                          "start": {
                            "line": 603,
                            "column": 4
                          },
                          "end": {
                            "line": 603,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 21974,
                        "end": 21996,
                        "loc": {
                          "start": {
                            "line": 603,
                            "column": 14
                          },
                          "end": {
                            "line": 603,
                            "column": 36
                          }
                        },
                        "left": {
                          "type": "CallExpression",
                          "start": 21974,
                          "end": 21990,
                          "loc": {
                            "start": {
                              "line": 603,
                              "column": 14
                            },
                            "end": {
                              "line": 603,
                              "column": 30
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 21974,
                            "end": 21981,
                            "loc": {
                              "start": {
                                "line": 603,
                                "column": 14
                              },
                              "end": {
                                "line": 603,
                                "column": 21
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 21974,
                              "end": 21975,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 14
                                },
                                "end": {
                                  "line": 603,
                                  "column": 15
                                },
                                "identifierName": "_"
                              },
                              "name": "_"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 21976,
                              "end": 21981,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 16
                                },
                                "end": {
                                  "line": 603,
                                  "column": 21
                                },
                                "identifierName": "clone"
                              },
                              "name": "clone"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 21982,
                              "end": 21989,
                              "loc": {
                                "start": {
                                  "line": 603,
                                  "column": 22
                                },
                                "end": {
                                  "line": 603,
                                  "column": 29
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ]
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 21994,
                          "end": 21996,
                          "loc": {
                            "start": {
                              "line": 603,
                              "column": 34
                            },
                            "end": {
                              "line": 603,
                              "column": 36
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22003,
                    "end": 22028,
                    "loc": {
                      "start": {
                        "line": 605,
                        "column": 4
                      },
                      "end": {
                        "line": 605,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22009,
                        "end": 22027,
                        "loc": {
                          "start": {
                            "line": 605,
                            "column": 10
                          },
                          "end": {
                            "line": 605,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22009,
                          "end": 22020,
                          "loc": {
                            "start": {
                              "line": 605,
                              "column": 10
                            },
                            "end": {
                              "line": 605,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 22023,
                          "end": 22027,
                          "loc": {
                            "start": {
                              "line": 605,
                              "column": 24
                            },
                            "end": {
                              "line": 605,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22033,
                    "end": 22090,
                    "loc": {
                      "start": {
                        "line": 606,
                        "column": 4
                      },
                      "end": {
                        "line": 606,
                        "column": 61
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22039,
                        "end": 22089,
                        "loc": {
                          "start": {
                            "line": 606,
                            "column": 10
                          },
                          "end": {
                            "line": 606,
                            "column": 60
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22039,
                          "end": 22048,
                          "loc": {
                            "start": {
                              "line": 606,
                              "column": 10
                            },
                            "end": {
                              "line": 606,
                              "column": 19
                            },
                            "identifierName": "sourceKey"
                          },
                          "name": "sourceKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 22051,
                          "end": 22089,
                          "loc": {
                            "start": {
                              "line": 606,
                              "column": 22
                            },
                            "end": {
                              "line": 606,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 22051,
                            "end": 22069,
                            "loc": {
                              "start": {
                                "line": 606,
                                "column": 22
                              },
                              "end": {
                                "line": 606,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22051,
                              "end": 22062,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 22
                                },
                                "end": {
                                  "line": 606,
                                  "column": 33
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22063,
                              "end": 22069,
                              "loc": {
                                "start": {
                                  "line": 606,
                                  "column": 34
                                },
                                "end": {
                                  "line": 606,
                                  "column": 40
                                },
                                "identifierName": "source"
                              },
                              "name": "source"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22070,
                            "end": 22089,
                            "loc": {
                              "start": {
                                "line": 606,
                                "column": 41
                              },
                              "end": {
                                "line": 606,
                                "column": 60
                              },
                              "identifierName": "primaryKeyAttribute"
                            },
                            "name": "primaryKeyAttribute"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22095,
                    "end": 22152,
                    "loc": {
                      "start": {
                        "line": 607,
                        "column": 4
                      },
                      "end": {
                        "line": 607,
                        "column": 61
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22101,
                        "end": 22151,
                        "loc": {
                          "start": {
                            "line": 607,
                            "column": 10
                          },
                          "end": {
                            "line": 607,
                            "column": 60
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22101,
                          "end": 22110,
                          "loc": {
                            "start": {
                              "line": 607,
                              "column": 10
                            },
                            "end": {
                              "line": 607,
                              "column": 19
                            },
                            "identifierName": "targetKey"
                          },
                          "name": "targetKey"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 22113,
                          "end": 22151,
                          "loc": {
                            "start": {
                              "line": 607,
                              "column": 22
                            },
                            "end": {
                              "line": 607,
                              "column": 60
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 22113,
                            "end": 22131,
                            "loc": {
                              "start": {
                                "line": 607,
                                "column": 22
                              },
                              "end": {
                                "line": 607,
                                "column": 40
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22113,
                              "end": 22124,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 22
                                },
                                "end": {
                                  "line": 607,
                                  "column": 33
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22125,
                              "end": 22131,
                              "loc": {
                                "start": {
                                  "line": 607,
                                  "column": 34
                                },
                                "end": {
                                  "line": 607,
                                  "column": 40
                                },
                                "identifierName": "target"
                              },
                              "name": "target"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22132,
                            "end": 22151,
                            "loc": {
                              "start": {
                                "line": 607,
                                "column": 41
                              },
                              "end": {
                                "line": 607,
                                "column": 60
                              },
                              "identifierName": "primaryKeyAttribute"
                            },
                            "name": "primaryKeyAttribute"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22157,
                    "end": 22199,
                    "loc": {
                      "start": {
                        "line": 608,
                        "column": 4
                      },
                      "end": {
                        "line": 608,
                        "column": 46
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22163,
                        "end": 22198,
                        "loc": {
                          "start": {
                            "line": 608,
                            "column": 10
                          },
                          "end": {
                            "line": 608,
                            "column": 45
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22163,
                          "end": 22173,
                          "loc": {
                            "start": {
                              "line": 608,
                              "column": 10
                            },
                            "end": {
                              "line": 608,
                              "column": 20
                            },
                            "identifierName": "identifier"
                          },
                          "name": "identifier"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 22176,
                          "end": 22198,
                          "loc": {
                            "start": {
                              "line": 608,
                              "column": 23
                            },
                            "end": {
                              "line": 608,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22176,
                            "end": 22187,
                            "loc": {
                              "start": {
                                "line": 608,
                                "column": 23
                              },
                              "end": {
                                "line": 608,
                                "column": 34
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22188,
                            "end": 22198,
                            "loc": {
                              "start": {
                                "line": 608,
                                "column": 35
                              },
                              "end": {
                                "line": 608,
                                "column": 45
                              },
                              "identifierName": "identifier"
                            },
                            "name": "identifier"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22204,
                    "end": 22260,
                    "loc": {
                      "start": {
                        "line": 609,
                        "column": 4
                      },
                      "end": {
                        "line": 609,
                        "column": 60
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22210,
                        "end": 22259,
                        "loc": {
                          "start": {
                            "line": 609,
                            "column": 10
                          },
                          "end": {
                            "line": 609,
                            "column": 59
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22210,
                          "end": 22227,
                          "loc": {
                            "start": {
                              "line": 609,
                              "column": 10
                            },
                            "end": {
                              "line": 609,
                              "column": 27
                            },
                            "identifierName": "foreignIdentifier"
                          },
                          "name": "foreignIdentifier"
                        },
                        "init": {
                          "type": "MemberExpression",
                          "start": 22230,
                          "end": 22259,
                          "loc": {
                            "start": {
                              "line": 609,
                              "column": 30
                            },
                            "end": {
                              "line": 609,
                              "column": 59
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22230,
                            "end": 22241,
                            "loc": {
                              "start": {
                                "line": 609,
                                "column": 30
                              },
                              "end": {
                                "line": 609,
                                "column": 41
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22242,
                            "end": 22259,
                            "loc": {
                              "start": {
                                "line": 609,
                                "column": 42
                              },
                              "end": {
                                "line": 609,
                                "column": 59
                              },
                              "identifierName": "foreignIdentifier"
                            },
                            "name": "foreignIdentifier"
                          },
                          "computed": false
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22265,
                    "end": 22419,
                    "loc": {
                      "start": {
                        "line": 610,
                        "column": 4
                      },
                      "end": {
                        "line": 610,
                        "column": 158
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22271,
                        "end": 22418,
                        "loc": {
                          "start": {
                            "line": 610,
                            "column": 10
                          },
                          "end": {
                            "line": 610,
                            "column": 157
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22271,
                          "end": 22288,
                          "loc": {
                            "start": {
                              "line": 610,
                              "column": 10
                            },
                            "end": {
                              "line": 610,
                              "column": 27
                            },
                            "identifierName": "defaultAttributes"
                          },
                          "name": "defaultAttributes"
                        },
                        "init": {
                          "type": "CallExpression",
                          "start": 22291,
                          "end": 22418,
                          "loc": {
                            "start": {
                              "line": 610,
                              "column": 30
                            },
                            "end": {
                              "line": 610,
                              "column": 157
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22291,
                            "end": 22297,
                            "loc": {
                              "start": {
                                "line": 610,
                                "column": 30
                              },
                              "end": {
                                "line": 610,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22291,
                              "end": 22292,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 30
                                },
                                "end": {
                                  "line": 610,
                                  "column": 31
                                },
                                "identifierName": "_"
                              },
                              "name": "_"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22293,
                              "end": 22297,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 32
                                },
                                "end": {
                                  "line": 610,
                                  "column": 36
                                },
                                "identifierName": "omit"
                              },
                              "name": "omit"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "LogicalExpression",
                              "start": 22298,
                              "end": 22319,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 37
                                },
                                "end": {
                                  "line": 610,
                                  "column": 58
                                }
                              },
                              "left": {
                                "type": "MemberExpression",
                                "start": 22298,
                                "end": 22313,
                                "loc": {
                                  "start": {
                                    "line": 610,
                                    "column": 37
                                  },
                                  "end": {
                                    "line": 610,
                                    "column": 52
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22298,
                                  "end": 22305,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 37
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 44
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22306,
                                  "end": 22313,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 52
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "operator": "||",
                              "right": {
                                "type": "ObjectExpression",
                                "start": 22317,
                                "end": 22319,
                                "loc": {
                                  "start": {
                                    "line": 610,
                                    "column": 56
                                  },
                                  "end": {
                                    "line": 610,
                                    "column": 58
                                  }
                                },
                                "properties": []
                              }
                            },
                            {
                              "type": "ArrayExpression",
                              "start": 22321,
                              "end": 22417,
                              "loc": {
                                "start": {
                                  "line": 610,
                                  "column": 60
                                },
                                "end": {
                                  "line": 610,
                                  "column": 156
                                }
                              },
                              "elements": [
                                {
                                  "type": "StringLiteral",
                                  "start": 22322,
                                  "end": 22335,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 61
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 74
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "transaction",
                                    "raw": "'transaction'"
                                  },
                                  "value": "transaction"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22337,
                                  "end": 22344,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 83
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "hooks",
                                    "raw": "'hooks'"
                                  },
                                  "value": "hooks"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22346,
                                  "end": 22363,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 85
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 102
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "individualHooks",
                                    "raw": "'individualHooks'"
                                  },
                                  "value": "individualHooks"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22365,
                                  "end": 22383,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 104
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 122
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "ignoreDuplicates",
                                    "raw": "'ignoreDuplicates'"
                                  },
                                  "value": "ignoreDuplicates"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22385,
                                  "end": 22395,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 124
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 134
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "validate",
                                    "raw": "'validate'"
                                  },
                                  "value": "validate"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22397,
                                  "end": 22405,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 136
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 144
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "fields",
                                    "raw": "'fields'"
                                  },
                                  "value": "fields"
                                },
                                {
                                  "type": "StringLiteral",
                                  "start": 22407,
                                  "end": 22416,
                                  "loc": {
                                    "start": {
                                      "line": 610,
                                      "column": 146
                                    },
                                    "end": {
                                      "line": 610,
                                      "column": 155
                                    }
                                  },
                                  "extra": {
                                    "rawValue": "logging",
                                    "raw": "'logging'"
                                  },
                                  "value": "logging"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 22425,
                    "end": 22482,
                    "loc": {
                      "start": {
                        "line": 612,
                        "column": 4
                      },
                      "end": {
                        "line": 612,
                        "column": 61
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 22425,
                      "end": 22481,
                      "loc": {
                        "start": {
                          "line": 612,
                          "column": 4
                        },
                        "end": {
                          "line": 612,
                          "column": 60
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 22425,
                        "end": 22437,
                        "loc": {
                          "start": {
                            "line": 612,
                            "column": 4
                          },
                          "end": {
                            "line": 612,
                            "column": 16
                          },
                          "identifierName": "newInstances"
                        },
                        "name": "newInstances"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 22440,
                        "end": 22481,
                        "loc": {
                          "start": {
                            "line": 612,
                            "column": 19
                          },
                          "end": {
                            "line": 612,
                            "column": 60
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22440,
                          "end": 22467,
                          "loc": {
                            "start": {
                              "line": 612,
                              "column": 19
                            },
                            "end": {
                              "line": 612,
                              "column": 46
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22440,
                            "end": 22451,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 19
                              },
                              "end": {
                                "line": 612,
                                "column": 30
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22452,
                            "end": 22467,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 31
                              },
                              "end": {
                                "line": 612,
                                "column": 46
                              },
                              "identifierName": "toInstanceArray"
                            },
                            "name": "toInstanceArray"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 22468,
                            "end": 22480,
                            "loc": {
                              "start": {
                                "line": 612,
                                "column": 47
                              },
                              "end": {
                                "line": 612,
                                "column": 59
                              },
                              "identifierName": "newInstances"
                            },
                            "name": "newInstances"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 22488,
                    "end": 22505,
                    "loc": {
                      "start": {
                        "line": 614,
                        "column": 4
                      },
                      "end": {
                        "line": 614,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 22494,
                        "end": 22504,
                        "loc": {
                          "start": {
                            "line": 614,
                            "column": 10
                          },
                          "end": {
                            "line": 614,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 22494,
                          "end": 22499,
                          "loc": {
                            "start": {
                              "line": 614,
                              "column": 10
                            },
                            "end": {
                              "line": 614,
                              "column": 15
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 22502,
                          "end": 22504,
                          "loc": {
                            "start": {
                              "line": 614,
                              "column": 18
                            },
                            "end": {
                              "line": 614,
                              "column": 20
                            }
                          },
                          "properties": []
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 22510,
                    "end": 22560,
                    "loc": {
                      "start": {
                        "line": 615,
                        "column": 4
                      },
                      "end": {
                        "line": 615,
                        "column": 54
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 22510,
                      "end": 22559,
                      "loc": {
                        "start": {
                          "line": 615,
                          "column": 4
                        },
                        "end": {
                          "line": 615,
                          "column": 53
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 22510,
                        "end": 22527,
                        "loc": {
                          "start": {
                            "line": 615,
                            "column": 4
                          },
                          "end": {
                            "line": 615,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 22510,
                          "end": 22515,
                          "loc": {
                            "start": {
                              "line": 615,
                              "column": 4
                            },
                            "end": {
                              "line": 615,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22516,
                          "end": 22526,
                          "loc": {
                            "start": {
                              "line": 615,
                              "column": 10
                            },
                            "end": {
                              "line": 615,
                              "column": 20
                            },
                            "identifierName": "identifier"
                          },
                          "name": "identifier"
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 22530,
                        "end": 22559,
                        "loc": {
                          "start": {
                            "line": 615,
                            "column": 24
                          },
                          "end": {
                            "line": 615,
                            "column": 53
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22530,
                          "end": 22548,
                          "loc": {
                            "start": {
                              "line": 615,
                              "column": 24
                            },
                            "end": {
                              "line": 615,
                              "column": 42
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22530,
                            "end": 22544,
                            "loc": {
                              "start": {
                                "line": 615,
                                "column": 24
                              },
                              "end": {
                                "line": 615,
                                "column": 38
                              },
                              "identifierName": "sourceInstance"
                            },
                            "name": "sourceInstance"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22545,
                            "end": 22548,
                            "loc": {
                              "start": {
                                "line": 615,
                                "column": 39
                              },
                              "end": {
                                "line": 615,
                                "column": 42
                              },
                              "identifierName": "get"
                            },
                            "name": "get"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 22549,
                            "end": 22558,
                            "loc": {
                              "start": {
                                "line": 615,
                                "column": 43
                              },
                              "end": {
                                "line": 615,
                                "column": 52
                              },
                              "identifierName": "sourceKey"
                            },
                            "name": "sourceKey"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 22565,
                    "end": 22652,
                    "loc": {
                      "start": {
                        "line": 616,
                        "column": 4
                      },
                      "end": {
                        "line": 616,
                        "column": 91
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 22565,
                      "end": 22651,
                      "loc": {
                        "start": {
                          "line": 616,
                          "column": 4
                        },
                        "end": {
                          "line": 616,
                          "column": 90
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 22565,
                        "end": 22589,
                        "loc": {
                          "start": {
                            "line": 616,
                            "column": 4
                          },
                          "end": {
                            "line": 616,
                            "column": 28
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 22565,
                          "end": 22570,
                          "loc": {
                            "start": {
                              "line": 616,
                              "column": 4
                            },
                            "end": {
                              "line": 616,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22571,
                          "end": 22588,
                          "loc": {
                            "start": {
                              "line": 616,
                              "column": 10
                            },
                            "end": {
                              "line": 616,
                              "column": 27
                            },
                            "identifierName": "foreignIdentifier"
                          },
                          "name": "foreignIdentifier"
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 22592,
                        "end": 22651,
                        "loc": {
                          "start": {
                            "line": 616,
                            "column": 31
                          },
                          "end": {
                            "line": 616,
                            "column": 90
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 22592,
                          "end": 22608,
                          "loc": {
                            "start": {
                              "line": 616,
                              "column": 31
                            },
                            "end": {
                              "line": 616,
                              "column": 47
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 22592,
                            "end": 22604,
                            "loc": {
                              "start": {
                                "line": 616,
                                "column": 31
                              },
                              "end": {
                                "line": 616,
                                "column": 43
                              },
                              "identifierName": "newInstances"
                            },
                            "name": "newInstances"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22605,
                            "end": 22608,
                            "loc": {
                              "start": {
                                "line": 616,
                                "column": 44
                              },
                              "end": {
                                "line": 616,
                                "column": 47
                              },
                              "identifierName": "map"
                            },
                            "name": "map"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 22609,
                            "end": 22650,
                            "loc": {
                              "start": {
                                "line": 616,
                                "column": 48
                              },
                              "end": {
                                "line": 616,
                                "column": 89
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 22609,
                                "end": 22620,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 48
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 59
                                  },
                                  "identifierName": "newInstance"
                                },
                                "name": "newInstance"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 22624,
                              "end": 22650,
                              "loc": {
                                "start": {
                                  "line": 616,
                                  "column": 63
                                },
                                "end": {
                                  "line": 616,
                                  "column": 89
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22624,
                                "end": 22639,
                                "loc": {
                                  "start": {
                                    "line": 616,
                                    "column": 63
                                  },
                                  "end": {
                                    "line": 616,
                                    "column": 78
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22624,
                                  "end": 22635,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 63
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 74
                                    },
                                    "identifierName": "newInstance"
                                  },
                                  "name": "newInstance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22636,
                                  "end": 22639,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 75
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 78
                                    },
                                    "identifierName": "get"
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "Identifier",
                                  "start": 22640,
                                  "end": 22649,
                                  "loc": {
                                    "start": {
                                      "line": 616,
                                      "column": 79
                                    },
                                    "end": {
                                      "line": 616,
                                      "column": 88
                                    },
                                    "identifierName": "targetKey"
                                  },
                                  "name": "targetKey"
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 22658,
                    "end": 22701,
                    "loc": {
                      "start": {
                        "line": 618,
                        "column": 4
                      },
                      "end": {
                        "line": 618,
                        "column": 47
                      }
                    },
                    "expression": {
                      "type": "CallExpression",
                      "start": 22658,
                      "end": 22700,
                      "loc": {
                        "start": {
                          "line": 618,
                          "column": 4
                        },
                        "end": {
                          "line": 618,
                          "column": 46
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 22658,
                        "end": 22666,
                        "loc": {
                          "start": {
                            "line": 618,
                            "column": 4
                          },
                          "end": {
                            "line": 618,
                            "column": 12
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 22658,
                          "end": 22659,
                          "loc": {
                            "start": {
                              "line": 618,
                              "column": 4
                            },
                            "end": {
                              "line": 618,
                              "column": 5
                            },
                            "identifierName": "_"
                          },
                          "name": "_"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22660,
                          "end": 22666,
                          "loc": {
                            "start": {
                              "line": 618,
                              "column": 6
                            },
                            "end": {
                              "line": 618,
                              "column": 12
                            },
                            "identifierName": "assign"
                          },
                          "name": "assign"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 22667,
                          "end": 22672,
                          "loc": {
                            "start": {
                              "line": 618,
                              "column": 13
                            },
                            "end": {
                              "line": 618,
                              "column": 18
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        {
                          "type": "MemberExpression",
                          "start": 22674,
                          "end": 22699,
                          "loc": {
                            "start": {
                              "line": 618,
                              "column": 20
                            },
                            "end": {
                              "line": 618,
                              "column": 45
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 22674,
                            "end": 22693,
                            "loc": {
                              "start": {
                                "line": 618,
                                "column": 20
                              },
                              "end": {
                                "line": 618,
                                "column": 39
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 22674,
                              "end": 22685,
                              "loc": {
                                "start": {
                                  "line": 618,
                                  "column": 20
                                },
                                "end": {
                                  "line": 618,
                                  "column": 31
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22686,
                              "end": 22693,
                              "loc": {
                                "start": {
                                  "line": 618,
                                  "column": 32
                                },
                                "end": {
                                  "line": 618,
                                  "column": 39
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 22694,
                            "end": 22699,
                            "loc": {
                              "start": {
                                "line": 618,
                                "column": 40
                              },
                              "end": {
                                "line": 618,
                                "column": 45
                              },
                              "identifierName": "scope"
                            },
                            "name": "scope"
                          },
                          "computed": false
                        }
                      ]
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 22707,
                    "end": 24915,
                    "loc": {
                      "start": {
                        "line": 620,
                        "column": 4
                      },
                      "end": {
                        "line": 671,
                        "column": 7
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 22714,
                      "end": 24914,
                      "loc": {
                        "start": {
                          "line": 620,
                          "column": 11
                        },
                        "end": {
                          "line": 671,
                          "column": 6
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 22714,
                        "end": 22793,
                        "loc": {
                          "start": {
                            "line": 620,
                            "column": 11
                          },
                          "end": {
                            "line": 620,
                            "column": 90
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 22714,
                          "end": 22788,
                          "loc": {
                            "start": {
                              "line": 620,
                              "column": 11
                            },
                            "end": {
                              "line": 620,
                              "column": 85
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 22714,
                            "end": 22747,
                            "loc": {
                              "start": {
                                "line": 620,
                                "column": 11
                              },
                              "end": {
                                "line": 620,
                                "column": 44
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 22714,
                              "end": 22739,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 11
                                },
                                "end": {
                                  "line": 620,
                                  "column": 36
                                }
                              },
                              "object": {
                                "type": "MemberExpression",
                                "start": 22714,
                                "end": 22733,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 620,
                                    "column": 30
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22714,
                                  "end": 22725,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 22
                                    },
                                    "identifierName": "association"
                                  },
                                  "name": "association"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22726,
                                  "end": 22733,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 30
                                    },
                                    "identifierName": "through"
                                  },
                                  "name": "through"
                                },
                                "computed": false
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 22734,
                                "end": 22739,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 31
                                  },
                                  "end": {
                                    "line": 620,
                                    "column": 36
                                  },
                                  "identifierName": "model"
                                },
                                "name": "model"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 22740,
                              "end": 22747,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 37
                                },
                                "end": {
                                  "line": 620,
                                  "column": 44
                                },
                                "identifierName": "findAll"
                              },
                              "name": "findAll"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "CallExpression",
                              "start": 22748,
                              "end": 22787,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 45
                                },
                                "end": {
                                  "line": 620,
                                  "column": 84
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 22748,
                                "end": 22758,
                                "loc": {
                                  "start": {
                                    "line": 620,
                                    "column": 45
                                  },
                                  "end": {
                                    "line": 620,
                                    "column": 55
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 22748,
                                  "end": 22749,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 45
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 46
                                    },
                                    "identifierName": "_"
                                  },
                                  "name": "_"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 22750,
                                  "end": 22758,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 55
                                    },
                                    "identifierName": "defaults"
                                  },
                                  "name": "defaults"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "ObjectExpression",
                                  "start": 22759,
                                  "end": 22777,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 56
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 74
                                    }
                                  },
                                  "properties": [
                                    {
                                      "type": "ObjectProperty",
                                      "start": 22760,
                                      "end": 22765,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 57
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 62
                                        }
                                      },
                                      "method": false,
                                      "shorthand": true,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 22760,
                                        "end": 22765,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 62
                                          },
                                          "identifierName": "where"
                                        },
                                        "name": "where"
                                      },
                                      "value": {
                                        "type": "Identifier",
                                        "start": 22760,
                                        "end": 22765,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 57
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 62
                                          },
                                          "identifierName": "where"
                                        },
                                        "name": "where"
                                      },
                                      "extra": {
                                        "shorthand": true
                                      }
                                    },
                                    {
                                      "type": "ObjectProperty",
                                      "start": 22767,
                                      "end": 22776,
                                      "loc": {
                                        "start": {
                                          "line": 620,
                                          "column": 64
                                        },
                                        "end": {
                                          "line": 620,
                                          "column": 73
                                        }
                                      },
                                      "method": false,
                                      "shorthand": false,
                                      "computed": false,
                                      "key": {
                                        "type": "Identifier",
                                        "start": 22767,
                                        "end": 22770,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 64
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 67
                                          },
                                          "identifierName": "raw"
                                        },
                                        "name": "raw"
                                      },
                                      "value": {
                                        "type": "BooleanLiteral",
                                        "start": 22772,
                                        "end": 22776,
                                        "loc": {
                                          "start": {
                                            "line": 620,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 620,
                                            "column": 73
                                          }
                                        },
                                        "value": true
                                      }
                                    }
                                  ]
                                },
                                {
                                  "type": "Identifier",
                                  "start": 22779,
                                  "end": 22786,
                                  "loc": {
                                    "start": {
                                      "line": 620,
                                      "column": 76
                                    },
                                    "end": {
                                      "line": 620,
                                      "column": 83
                                    },
                                    "identifierName": "options"
                                  },
                                  "name": "options"
                                }
                              ]
                            }
                          ]
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 22789,
                          "end": 22793,
                          "loc": {
                            "start": {
                              "line": 620,
                              "column": 86
                            },
                            "end": {
                              "line": 620,
                              "column": 90
                            },
                            "identifierName": "then"
                          },
                          "name": "then"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 22794,
                          "end": 24913,
                          "loc": {
                            "start": {
                              "line": 620,
                              "column": 91
                            },
                            "end": {
                              "line": 671,
                              "column": 5
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": false,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 22794,
                              "end": 22805,
                              "loc": {
                                "start": {
                                  "line": 620,
                                  "column": 91
                                },
                                "end": {
                                  "line": 620,
                                  "column": 102
                                },
                                "identifierName": "currentRows"
                              },
                              "name": "currentRows"
                            }
                          ],
                          "body": {
                            "type": "BlockStatement",
                            "start": 22809,
                            "end": 24913,
                            "loc": {
                              "start": {
                                "line": 620,
                                "column": 106
                              },
                              "end": {
                                "line": 671,
                                "column": 5
                              }
                            },
                            "body": [
                              {
                                "type": "VariableDeclaration",
                                "start": 22817,
                                "end": 22837,
                                "loc": {
                                  "start": {
                                    "line": 621,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 621,
                                    "column": 26
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 22823,
                                    "end": 22836,
                                    "loc": {
                                      "start": {
                                        "line": 621,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 621,
                                        "column": 25
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 22823,
                                      "end": 22831,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 20
                                        },
                                        "identifierName": "promises"
                                      },
                                      "name": "promises"
                                    },
                                    "init": {
                                      "type": "ArrayExpression",
                                      "start": 22834,
                                      "end": 22836,
                                      "loc": {
                                        "start": {
                                          "line": 621,
                                          "column": 23
                                        },
                                        "end": {
                                          "line": 621,
                                          "column": 25
                                        }
                                      },
                                      "elements": []
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 22844,
                                "end": 22875,
                                "loc": {
                                  "start": {
                                    "line": 622,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 622,
                                    "column": 37
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 22850,
                                    "end": 22874,
                                    "loc": {
                                      "start": {
                                        "line": 622,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 622,
                                        "column": 36
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 22850,
                                      "end": 22869,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 31
                                        },
                                        "identifierName": "unassociatedObjects"
                                      },
                                      "name": "unassociatedObjects"
                                    },
                                    "init": {
                                      "type": "ArrayExpression",
                                      "start": 22872,
                                      "end": 22874,
                                      "loc": {
                                        "start": {
                                          "line": 622,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 622,
                                          "column": 36
                                        }
                                      },
                                      "elements": []
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "VariableDeclaration",
                                "start": 22882,
                                "end": 22913,
                                "loc": {
                                  "start": {
                                    "line": 623,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 623,
                                    "column": 37
                                  }
                                },
                                "declarations": [
                                  {
                                    "type": "VariableDeclarator",
                                    "start": 22888,
                                    "end": 22912,
                                    "loc": {
                                      "start": {
                                        "line": 623,
                                        "column": 12
                                      },
                                      "end": {
                                        "line": 623,
                                        "column": 36
                                      }
                                    },
                                    "id": {
                                      "type": "Identifier",
                                      "start": 22888,
                                      "end": 22907,
                                      "loc": {
                                        "start": {
                                          "line": 623,
                                          "column": 12
                                        },
                                        "end": {
                                          "line": 623,
                                          "column": 31
                                        },
                                        "identifierName": "changedAssociations"
                                      },
                                      "name": "changedAssociations"
                                    },
                                    "init": {
                                      "type": "ArrayExpression",
                                      "start": 22910,
                                      "end": 22912,
                                      "loc": {
                                        "start": {
                                          "line": 623,
                                          "column": 34
                                        },
                                        "end": {
                                          "line": 623,
                                          "column": 36
                                        }
                                      },
                                      "elements": []
                                    }
                                  }
                                ],
                                "kind": "const"
                              },
                              {
                                "type": "ForOfStatement",
                                "start": 22920,
                                "end": 23517,
                                "loc": {
                                  "start": {
                                    "line": 624,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 637,
                                    "column": 7
                                  }
                                },
                                "left": {
                                  "type": "VariableDeclaration",
                                  "start": 22925,
                                  "end": 22934,
                                  "loc": {
                                    "start": {
                                      "line": 624,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 624,
                                      "column": 20
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 22931,
                                      "end": 22934,
                                      "loc": {
                                        "start": {
                                          "line": 624,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 624,
                                          "column": 20
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 22931,
                                        "end": 22934,
                                        "loc": {
                                          "start": {
                                            "line": 624,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 624,
                                            "column": 20
                                          },
                                          "identifierName": "obj"
                                        },
                                        "name": "obj"
                                      },
                                      "init": null
                                    }
                                  ],
                                  "kind": "const"
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 22938,
                                  "end": 22950,
                                  "loc": {
                                    "start": {
                                      "line": 624,
                                      "column": 24
                                    },
                                    "end": {
                                      "line": 624,
                                      "column": 36
                                    },
                                    "identifierName": "newInstances"
                                  },
                                  "name": "newInstances"
                                },
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 22952,
                                  "end": 23517,
                                  "loc": {
                                    "start": {
                                      "line": 624,
                                      "column": 38
                                    },
                                    "end": {
                                      "line": 637,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 22962,
                                      "end": 23072,
                                      "loc": {
                                        "start": {
                                          "line": 625,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 625,
                                          "column": 118
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 22968,
                                          "end": 23071,
                                          "loc": {
                                            "start": {
                                              "line": 625,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 625,
                                              "column": 117
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 22968,
                                            "end": 22987,
                                            "loc": {
                                              "start": {
                                                "line": 625,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 625,
                                                "column": 33
                                              },
                                              "identifierName": "existingAssociation"
                                            },
                                            "name": "existingAssociation"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 22990,
                                            "end": 23071,
                                            "loc": {
                                              "start": {
                                                "line": 625,
                                                "column": 36
                                              },
                                              "end": {
                                                "line": 625,
                                                "column": 117
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 22990,
                                              "end": 22996,
                                              "loc": {
                                                "start": {
                                                  "line": 625,
                                                  "column": 36
                                                },
                                                "end": {
                                                  "line": 625,
                                                  "column": 42
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 22990,
                                                "end": 22991,
                                                "loc": {
                                                  "start": {
                                                    "line": 625,
                                                    "column": 36
                                                  },
                                                  "end": {
                                                    "line": 625,
                                                    "column": 37
                                                  },
                                                  "identifierName": "_"
                                                },
                                                "name": "_"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 22992,
                                                "end": 22996,
                                                "loc": {
                                                  "start": {
                                                    "line": 625,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 625,
                                                    "column": 42
                                                  },
                                                  "identifierName": "find"
                                                },
                                                "name": "find"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 22997,
                                                "end": 23008,
                                                "loc": {
                                                  "start": {
                                                    "line": 625,
                                                    "column": 43
                                                  },
                                                  "end": {
                                                    "line": 625,
                                                    "column": 54
                                                  },
                                                  "identifierName": "currentRows"
                                                },
                                                "name": "currentRows"
                                              },
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 23010,
                                                "end": 23070,
                                                "loc": {
                                                  "start": {
                                                    "line": 625,
                                                    "column": 56
                                                  },
                                                  "end": {
                                                    "line": 625,
                                                    "column": 116
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": true,
                                                "async": false,
                                                "params": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 23010,
                                                    "end": 23017,
                                                    "loc": {
                                                      "start": {
                                                        "line": 625,
                                                        "column": 56
                                                      },
                                                      "end": {
                                                        "line": 625,
                                                        "column": 63
                                                      },
                                                      "identifierName": "current"
                                                    },
                                                    "name": "current"
                                                  }
                                                ],
                                                "body": {
                                                  "type": "BinaryExpression",
                                                  "start": 23021,
                                                  "end": 23070,
                                                  "loc": {
                                                    "start": {
                                                      "line": 625,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 625,
                                                      "column": 116
                                                    }
                                                  },
                                                  "left": {
                                                    "type": "MemberExpression",
                                                    "start": 23021,
                                                    "end": 23047,
                                                    "loc": {
                                                      "start": {
                                                        "line": 625,
                                                        "column": 67
                                                      },
                                                      "end": {
                                                        "line": 625,
                                                        "column": 93
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 23021,
                                                      "end": 23028,
                                                      "loc": {
                                                        "start": {
                                                          "line": 625,
                                                          "column": 67
                                                        },
                                                        "end": {
                                                          "line": 625,
                                                          "column": 74
                                                        },
                                                        "identifierName": "current"
                                                      },
                                                      "name": "current"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 23029,
                                                      "end": 23046,
                                                      "loc": {
                                                        "start": {
                                                          "line": 625,
                                                          "column": 75
                                                        },
                                                        "end": {
                                                          "line": 625,
                                                          "column": 92
                                                        },
                                                        "identifierName": "foreignIdentifier"
                                                      },
                                                      "name": "foreignIdentifier"
                                                    },
                                                    "computed": true
                                                  },
                                                  "operator": "===",
                                                  "right": {
                                                    "type": "CallExpression",
                                                    "start": 23052,
                                                    "end": 23070,
                                                    "loc": {
                                                      "start": {
                                                        "line": 625,
                                                        "column": 98
                                                      },
                                                      "end": {
                                                        "line": 625,
                                                        "column": 116
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 23052,
                                                      "end": 23059,
                                                      "loc": {
                                                        "start": {
                                                          "line": 625,
                                                          "column": 98
                                                        },
                                                        "end": {
                                                          "line": 625,
                                                          "column": 105
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23052,
                                                        "end": 23055,
                                                        "loc": {
                                                          "start": {
                                                            "line": 625,
                                                            "column": 98
                                                          },
                                                          "end": {
                                                            "line": 625,
                                                            "column": 101
                                                          },
                                                          "identifierName": "obj"
                                                        },
                                                        "name": "obj"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23056,
                                                        "end": 23059,
                                                        "loc": {
                                                          "start": {
                                                            "line": 625,
                                                            "column": 102
                                                          },
                                                          "end": {
                                                            "line": 625,
                                                            "column": 105
                                                          },
                                                          "identifierName": "get"
                                                        },
                                                        "name": "get"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 23060,
                                                        "end": 23069,
                                                        "loc": {
                                                          "start": {
                                                            "line": 625,
                                                            "column": 106
                                                          },
                                                          "end": {
                                                            "line": 625,
                                                            "column": 115
                                                          },
                                                          "identifierName": "targetKey"
                                                        },
                                                        "name": "targetKey"
                                                      }
                                                    ]
                                                  }
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 23082,
                                      "end": 23509,
                                      "loc": {
                                        "start": {
                                          "line": 627,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 636,
                                          "column": 9
                                        }
                                      },
                                      "test": {
                                        "type": "UnaryExpression",
                                        "start": 23086,
                                        "end": 23106,
                                        "loc": {
                                          "start": {
                                            "line": 627,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 627,
                                            "column": 32
                                          }
                                        },
                                        "operator": "!",
                                        "prefix": true,
                                        "argument": {
                                          "type": "Identifier",
                                          "start": 23087,
                                          "end": 23106,
                                          "loc": {
                                            "start": {
                                              "line": 627,
                                              "column": 13
                                            },
                                            "end": {
                                              "line": 627,
                                              "column": 32
                                            },
                                            "identifierName": "existingAssociation"
                                          },
                                          "name": "existingAssociation"
                                        },
                                        "extra": {
                                          "parenthesizedArgument": false
                                        }
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 23108,
                                        "end": 23160,
                                        "loc": {
                                          "start": {
                                            "line": 627,
                                            "column": 34
                                          },
                                          "end": {
                                            "line": 629,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 23120,
                                            "end": 23150,
                                            "loc": {
                                              "start": {
                                                "line": 628,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 628,
                                                "column": 40
                                              }
                                            },
                                            "expression": {
                                              "type": "CallExpression",
                                              "start": 23120,
                                              "end": 23149,
                                              "loc": {
                                                "start": {
                                                  "line": 628,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 628,
                                                  "column": 39
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 23120,
                                                "end": 23144,
                                                "loc": {
                                                  "start": {
                                                    "line": 628,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 628,
                                                    "column": 34
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23120,
                                                  "end": 23139,
                                                  "loc": {
                                                    "start": {
                                                      "line": 628,
                                                      "column": 10
                                                    },
                                                    "end": {
                                                      "line": 628,
                                                      "column": 29
                                                    },
                                                    "identifierName": "unassociatedObjects"
                                                  },
                                                  "name": "unassociatedObjects"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23140,
                                                  "end": 23144,
                                                  "loc": {
                                                    "start": {
                                                      "line": 628,
                                                      "column": 30
                                                    },
                                                    "end": {
                                                      "line": 628,
                                                      "column": 34
                                                    },
                                                    "identifierName": "push"
                                                  },
                                                  "name": "push"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "Identifier",
                                                  "start": 23145,
                                                  "end": 23148,
                                                  "loc": {
                                                    "start": {
                                                      "line": 628,
                                                      "column": 35
                                                    },
                                                    "end": {
                                                      "line": 628,
                                                      "column": 38
                                                    },
                                                    "identifierName": "obj"
                                                  },
                                                  "name": "obj"
                                                }
                                              ]
                                            }
                                          }
                                        ],
                                        "directives": []
                                      },
                                      "alternate": {
                                        "type": "BlockStatement",
                                        "start": 23166,
                                        "end": 23509,
                                        "loc": {
                                          "start": {
                                            "line": 629,
                                            "column": 15
                                          },
                                          "end": {
                                            "line": 636,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "VariableDeclaration",
                                            "start": 23178,
                                            "end": 23240,
                                            "loc": {
                                              "start": {
                                                "line": 630,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 630,
                                                "column": 72
                                              }
                                            },
                                            "declarations": [
                                              {
                                                "type": "VariableDeclarator",
                                                "start": 23184,
                                                "end": 23239,
                                                "loc": {
                                                  "start": {
                                                    "line": 630,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 630,
                                                    "column": 71
                                                  }
                                                },
                                                "id": {
                                                  "type": "Identifier",
                                                  "start": 23184,
                                                  "end": 23201,
                                                  "loc": {
                                                    "start": {
                                                      "line": 630,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 630,
                                                      "column": 33
                                                    },
                                                    "identifierName": "throughAttributes"
                                                  },
                                                  "name": "throughAttributes"
                                                },
                                                "init": {
                                                  "type": "MemberExpression",
                                                  "start": 23204,
                                                  "end": 23239,
                                                  "loc": {
                                                    "start": {
                                                      "line": 630,
                                                      "column": 36
                                                    },
                                                    "end": {
                                                      "line": 630,
                                                      "column": 71
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 23204,
                                                    "end": 23207,
                                                    "loc": {
                                                      "start": {
                                                        "line": 630,
                                                        "column": 36
                                                      },
                                                      "end": {
                                                        "line": 630,
                                                        "column": 39
                                                      },
                                                      "identifierName": "obj"
                                                    },
                                                    "name": "obj"
                                                  },
                                                  "property": {
                                                    "type": "MemberExpression",
                                                    "start": 23208,
                                                    "end": 23238,
                                                    "loc": {
                                                      "start": {
                                                        "line": 630,
                                                        "column": 40
                                                      },
                                                      "end": {
                                                        "line": 630,
                                                        "column": 70
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "MemberExpression",
                                                      "start": 23208,
                                                      "end": 23233,
                                                      "loc": {
                                                        "start": {
                                                          "line": 630,
                                                          "column": 40
                                                        },
                                                        "end": {
                                                          "line": 630,
                                                          "column": 65
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "MemberExpression",
                                                        "start": 23208,
                                                        "end": 23227,
                                                        "loc": {
                                                          "start": {
                                                            "line": 630,
                                                            "column": 40
                                                          },
                                                          "end": {
                                                            "line": 630,
                                                            "column": 59
                                                          }
                                                        },
                                                        "object": {
                                                          "type": "Identifier",
                                                          "start": 23208,
                                                          "end": 23219,
                                                          "loc": {
                                                            "start": {
                                                              "line": 630,
                                                              "column": 40
                                                            },
                                                            "end": {
                                                              "line": 630,
                                                              "column": 51
                                                            },
                                                            "identifierName": "association"
                                                          },
                                                          "name": "association"
                                                        },
                                                        "property": {
                                                          "type": "Identifier",
                                                          "start": 23220,
                                                          "end": 23227,
                                                          "loc": {
                                                            "start": {
                                                              "line": 630,
                                                              "column": 52
                                                            },
                                                            "end": {
                                                              "line": 630,
                                                              "column": 59
                                                            },
                                                            "identifierName": "through"
                                                          },
                                                          "name": "through"
                                                        },
                                                        "computed": false
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23228,
                                                        "end": 23233,
                                                        "loc": {
                                                          "start": {
                                                            "line": 630,
                                                            "column": 60
                                                          },
                                                          "end": {
                                                            "line": 630,
                                                            "column": 65
                                                          },
                                                          "identifierName": "model"
                                                        },
                                                        "name": "model"
                                                      },
                                                      "computed": false
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 23234,
                                                      "end": 23238,
                                                      "loc": {
                                                        "start": {
                                                          "line": 630,
                                                          "column": 66
                                                        },
                                                        "end": {
                                                          "line": 630,
                                                          "column": 70
                                                        },
                                                        "identifierName": "name"
                                                      },
                                                      "name": "name"
                                                    },
                                                    "computed": false
                                                  },
                                                  "computed": true
                                                }
                                              }
                                            ],
                                            "kind": "const"
                                          },
                                          {
                                            "type": "VariableDeclaration",
                                            "start": 23251,
                                            "end": 23323,
                                            "loc": {
                                              "start": {
                                                "line": 631,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 631,
                                                "column": 82
                                              }
                                            },
                                            "declarations": [
                                              {
                                                "type": "VariableDeclarator",
                                                "start": 23257,
                                                "end": 23322,
                                                "loc": {
                                                  "start": {
                                                    "line": 631,
                                                    "column": 16
                                                  },
                                                  "end": {
                                                    "line": 631,
                                                    "column": 81
                                                  }
                                                },
                                                "id": {
                                                  "type": "Identifier",
                                                  "start": 23257,
                                                  "end": 23267,
                                                  "loc": {
                                                    "start": {
                                                      "line": 631,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 631,
                                                      "column": 26
                                                    },
                                                    "identifierName": "attributes"
                                                  },
                                                  "name": "attributes"
                                                },
                                                "init": {
                                                  "type": "CallExpression",
                                                  "start": 23270,
                                                  "end": 23322,
                                                  "loc": {
                                                    "start": {
                                                      "line": 631,
                                                      "column": 29
                                                    },
                                                    "end": {
                                                      "line": 631,
                                                      "column": 81
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 23270,
                                                    "end": 23280,
                                                    "loc": {
                                                      "start": {
                                                        "line": 631,
                                                        "column": 29
                                                      },
                                                      "end": {
                                                        "line": 631,
                                                        "column": 39
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 23270,
                                                      "end": 23271,
                                                      "loc": {
                                                        "start": {
                                                          "line": 631,
                                                          "column": 29
                                                        },
                                                        "end": {
                                                          "line": 631,
                                                          "column": 30
                                                        },
                                                        "identifierName": "_"
                                                      },
                                                      "name": "_"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 23272,
                                                      "end": 23280,
                                                      "loc": {
                                                        "start": {
                                                          "line": 631,
                                                          "column": 31
                                                        },
                                                        "end": {
                                                          "line": 631,
                                                          "column": 39
                                                        },
                                                        "identifierName": "defaults"
                                                      },
                                                      "name": "defaults"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "ObjectExpression",
                                                      "start": 23281,
                                                      "end": 23283,
                                                      "loc": {
                                                        "start": {
                                                          "line": 631,
                                                          "column": 40
                                                        },
                                                        "end": {
                                                          "line": 631,
                                                          "column": 42
                                                        }
                                                      },
                                                      "properties": []
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 23285,
                                                      "end": 23302,
                                                      "loc": {
                                                        "start": {
                                                          "line": 631,
                                                          "column": 44
                                                        },
                                                        "end": {
                                                          "line": 631,
                                                          "column": 61
                                                        },
                                                        "identifierName": "throughAttributes"
                                                      },
                                                      "name": "throughAttributes"
                                                    },
                                                    {
                                                      "type": "Identifier",
                                                      "start": 23304,
                                                      "end": 23321,
                                                      "loc": {
                                                        "start": {
                                                          "line": 631,
                                                          "column": 63
                                                        },
                                                        "end": {
                                                          "line": 631,
                                                          "column": 80
                                                        },
                                                        "identifierName": "defaultAttributes"
                                                      },
                                                      "name": "defaultAttributes"
                                                    }
                                                  ]
                                                }
                                              }
                                            ],
                                            "kind": "const"
                                          },
                                          {
                                            "type": "IfStatement",
                                            "start": 23335,
                                            "end": 23499,
                                            "loc": {
                                              "start": {
                                                "line": 633,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 635,
                                                "column": 11
                                              }
                                            },
                                            "test": {
                                              "type": "CallExpression",
                                              "start": 23339,
                                              "end": 23441,
                                              "loc": {
                                                "start": {
                                                  "line": 633,
                                                  "column": 14
                                                },
                                                "end": {
                                                  "line": 633,
                                                  "column": 116
                                                }
                                              },
                                              "callee": {
                                                "type": "MemberExpression",
                                                "start": 23339,
                                                "end": 23345,
                                                "loc": {
                                                  "start": {
                                                    "line": 633,
                                                    "column": 14
                                                  },
                                                  "end": {
                                                    "line": 633,
                                                    "column": 20
                                                  }
                                                },
                                                "object": {
                                                  "type": "Identifier",
                                                  "start": 23339,
                                                  "end": 23340,
                                                  "loc": {
                                                    "start": {
                                                      "line": 633,
                                                      "column": 14
                                                    },
                                                    "end": {
                                                      "line": 633,
                                                      "column": 15
                                                    },
                                                    "identifierName": "_"
                                                  },
                                                  "name": "_"
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 23341,
                                                  "end": 23345,
                                                  "loc": {
                                                    "start": {
                                                      "line": 633,
                                                      "column": 16
                                                    },
                                                    "end": {
                                                      "line": 633,
                                                      "column": 20
                                                    },
                                                    "identifierName": "some"
                                                  },
                                                  "name": "some"
                                                },
                                                "computed": false
                                              },
                                              "arguments": [
                                                {
                                                  "type": "CallExpression",
                                                  "start": 23346,
                                                  "end": 23369,
                                                  "loc": {
                                                    "start": {
                                                      "line": 633,
                                                      "column": 21
                                                    },
                                                    "end": {
                                                      "line": 633,
                                                      "column": 44
                                                    }
                                                  },
                                                  "callee": {
                                                    "type": "MemberExpression",
                                                    "start": 23346,
                                                    "end": 23357,
                                                    "loc": {
                                                      "start": {
                                                        "line": 633,
                                                        "column": 21
                                                      },
                                                      "end": {
                                                        "line": 633,
                                                        "column": 32
                                                      }
                                                    },
                                                    "object": {
                                                      "type": "Identifier",
                                                      "start": 23346,
                                                      "end": 23352,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 21
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 27
                                                        },
                                                        "identifierName": "Object"
                                                      },
                                                      "name": "Object"
                                                    },
                                                    "property": {
                                                      "type": "Identifier",
                                                      "start": 23353,
                                                      "end": 23357,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 28
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 32
                                                        },
                                                        "identifierName": "keys"
                                                      },
                                                      "name": "keys"
                                                    },
                                                    "computed": false
                                                  },
                                                  "arguments": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 23358,
                                                      "end": 23368,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 33
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 43
                                                        },
                                                        "identifierName": "attributes"
                                                      },
                                                      "name": "attributes"
                                                    }
                                                  ]
                                                },
                                                {
                                                  "type": "ArrowFunctionExpression",
                                                  "start": 23371,
                                                  "end": 23440,
                                                  "loc": {
                                                    "start": {
                                                      "line": 633,
                                                      "column": 46
                                                    },
                                                    "end": {
                                                      "line": 633,
                                                      "column": 115
                                                    }
                                                  },
                                                  "id": null,
                                                  "generator": false,
                                                  "expression": true,
                                                  "async": false,
                                                  "params": [
                                                    {
                                                      "type": "Identifier",
                                                      "start": 23371,
                                                      "end": 23380,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 46
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 55
                                                        },
                                                        "identifierName": "attribute"
                                                      },
                                                      "name": "attribute"
                                                    }
                                                  ],
                                                  "body": {
                                                    "type": "BinaryExpression",
                                                    "start": 23384,
                                                    "end": 23440,
                                                    "loc": {
                                                      "start": {
                                                        "line": 633,
                                                        "column": 59
                                                      },
                                                      "end": {
                                                        "line": 633,
                                                        "column": 115
                                                      }
                                                    },
                                                    "left": {
                                                      "type": "MemberExpression",
                                                      "start": 23384,
                                                      "end": 23405,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 59
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 80
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23384,
                                                        "end": 23394,
                                                        "loc": {
                                                          "start": {
                                                            "line": 633,
                                                            "column": 59
                                                          },
                                                          "end": {
                                                            "line": 633,
                                                            "column": 69
                                                          },
                                                          "identifierName": "attributes"
                                                        },
                                                        "name": "attributes"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23395,
                                                        "end": 23404,
                                                        "loc": {
                                                          "start": {
                                                            "line": 633,
                                                            "column": 70
                                                          },
                                                          "end": {
                                                            "line": 633,
                                                            "column": 79
                                                          },
                                                          "identifierName": "attribute"
                                                        },
                                                        "name": "attribute"
                                                      },
                                                      "computed": true
                                                    },
                                                    "operator": "!==",
                                                    "right": {
                                                      "type": "MemberExpression",
                                                      "start": 23410,
                                                      "end": 23440,
                                                      "loc": {
                                                        "start": {
                                                          "line": 633,
                                                          "column": 85
                                                        },
                                                        "end": {
                                                          "line": 633,
                                                          "column": 115
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23410,
                                                        "end": 23429,
                                                        "loc": {
                                                          "start": {
                                                            "line": 633,
                                                            "column": 85
                                                          },
                                                          "end": {
                                                            "line": 633,
                                                            "column": 104
                                                          },
                                                          "identifierName": "existingAssociation"
                                                        },
                                                        "name": "existingAssociation"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23430,
                                                        "end": 23439,
                                                        "loc": {
                                                          "start": {
                                                            "line": 633,
                                                            "column": 105
                                                          },
                                                          "end": {
                                                            "line": 633,
                                                            "column": 114
                                                          },
                                                          "identifierName": "attribute"
                                                        },
                                                        "name": "attribute"
                                                      },
                                                      "computed": true
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            "consequent": {
                                              "type": "BlockStatement",
                                              "start": 23443,
                                              "end": 23499,
                                              "loc": {
                                                "start": {
                                                  "line": 633,
                                                  "column": 118
                                                },
                                                "end": {
                                                  "line": 635,
                                                  "column": 11
                                                }
                                              },
                                              "body": [
                                                {
                                                  "type": "ExpressionStatement",
                                                  "start": 23457,
                                                  "end": 23487,
                                                  "loc": {
                                                    "start": {
                                                      "line": 634,
                                                      "column": 12
                                                    },
                                                    "end": {
                                                      "line": 634,
                                                      "column": 42
                                                    }
                                                  },
                                                  "expression": {
                                                    "type": "CallExpression",
                                                    "start": 23457,
                                                    "end": 23486,
                                                    "loc": {
                                                      "start": {
                                                        "line": 634,
                                                        "column": 12
                                                      },
                                                      "end": {
                                                        "line": 634,
                                                        "column": 41
                                                      }
                                                    },
                                                    "callee": {
                                                      "type": "MemberExpression",
                                                      "start": 23457,
                                                      "end": 23481,
                                                      "loc": {
                                                        "start": {
                                                          "line": 634,
                                                          "column": 12
                                                        },
                                                        "end": {
                                                          "line": 634,
                                                          "column": 36
                                                        }
                                                      },
                                                      "object": {
                                                        "type": "Identifier",
                                                        "start": 23457,
                                                        "end": 23476,
                                                        "loc": {
                                                          "start": {
                                                            "line": 634,
                                                            "column": 12
                                                          },
                                                          "end": {
                                                            "line": 634,
                                                            "column": 31
                                                          },
                                                          "identifierName": "changedAssociations"
                                                        },
                                                        "name": "changedAssociations"
                                                      },
                                                      "property": {
                                                        "type": "Identifier",
                                                        "start": 23477,
                                                        "end": 23481,
                                                        "loc": {
                                                          "start": {
                                                            "line": 634,
                                                            "column": 32
                                                          },
                                                          "end": {
                                                            "line": 634,
                                                            "column": 36
                                                          },
                                                          "identifierName": "push"
                                                        },
                                                        "name": "push"
                                                      },
                                                      "computed": false
                                                    },
                                                    "arguments": [
                                                      {
                                                        "type": "Identifier",
                                                        "start": 23482,
                                                        "end": 23485,
                                                        "loc": {
                                                          "start": {
                                                            "line": 634,
                                                            "column": 37
                                                          },
                                                          "end": {
                                                            "line": 634,
                                                            "column": 40
                                                          },
                                                          "identifierName": "obj"
                                                        },
                                                        "name": "obj"
                                                      }
                                                    ]
                                                  }
                                                }
                                              ],
                                              "directives": []
                                            },
                                            "alternate": null
                                          }
                                        ],
                                        "directives": []
                                      }
                                    }
                                  ],
                                  "directives": []
                                }
                              },
                              {
                                "type": "IfStatement",
                                "start": 23525,
                                "end": 24163,
                                "loc": {
                                  "start": {
                                    "line": 639,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 653,
                                    "column": 7
                                  }
                                },
                                "test": {
                                  "type": "BinaryExpression",
                                  "start": 23529,
                                  "end": 23559,
                                  "loc": {
                                    "start": {
                                      "line": 639,
                                      "column": 10
                                    },
                                    "end": {
                                      "line": 639,
                                      "column": 40
                                    }
                                  },
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 23529,
                                    "end": 23555,
                                    "loc": {
                                      "start": {
                                        "line": 639,
                                        "column": 10
                                      },
                                      "end": {
                                        "line": 639,
                                        "column": 36
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 23529,
                                      "end": 23548,
                                      "loc": {
                                        "start": {
                                          "line": 639,
                                          "column": 10
                                        },
                                        "end": {
                                          "line": 639,
                                          "column": 29
                                        },
                                        "identifierName": "unassociatedObjects"
                                      },
                                      "name": "unassociatedObjects"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 23549,
                                      "end": 23555,
                                      "loc": {
                                        "start": {
                                          "line": 639,
                                          "column": 30
                                        },
                                        "end": {
                                          "line": 639,
                                          "column": 36
                                        },
                                        "identifierName": "length"
                                      },
                                      "name": "length"
                                    },
                                    "computed": false
                                  },
                                  "operator": ">",
                                  "right": {
                                    "type": "NumericLiteral",
                                    "start": 23558,
                                    "end": 23559,
                                    "loc": {
                                      "start": {
                                        "line": 639,
                                        "column": 39
                                      },
                                      "end": {
                                        "line": 639,
                                        "column": 40
                                      }
                                    },
                                    "extra": {
                                      "rawValue": 0,
                                      "raw": "0"
                                    },
                                    "value": 0
                                  }
                                },
                                "consequent": {
                                  "type": "BlockStatement",
                                  "start": 23561,
                                  "end": 24163,
                                  "loc": {
                                    "start": {
                                      "line": 639,
                                      "column": 42
                                    },
                                    "end": {
                                      "line": 653,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 23571,
                                      "end": 24048,
                                      "loc": {
                                        "start": {
                                          "line": 640,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 650,
                                          "column": 11
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 23577,
                                          "end": 24047,
                                          "loc": {
                                            "start": {
                                              "line": 640,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 650,
                                              "column": 10
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 23577,
                                            "end": 23581,
                                            "loc": {
                                              "start": {
                                                "line": 640,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 640,
                                                "column": 18
                                              },
                                              "identifierName": "bulk"
                                            },
                                            "name": "bulk"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 23584,
                                            "end": 24047,
                                            "loc": {
                                              "start": {
                                                "line": 640,
                                                "column": 21
                                              },
                                              "end": {
                                                "line": 650,
                                                "column": 10
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 23584,
                                              "end": 23607,
                                              "loc": {
                                                "start": {
                                                  "line": 640,
                                                  "column": 21
                                                },
                                                "end": {
                                                  "line": 640,
                                                  "column": 44
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 23584,
                                                "end": 23603,
                                                "loc": {
                                                  "start": {
                                                    "line": 640,
                                                    "column": 21
                                                  },
                                                  "end": {
                                                    "line": 640,
                                                    "column": 40
                                                  },
                                                  "identifierName": "unassociatedObjects"
                                                },
                                                "name": "unassociatedObjects"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 23604,
                                                "end": 23607,
                                                "loc": {
                                                  "start": {
                                                    "line": 640,
                                                    "column": 41
                                                  },
                                                  "end": {
                                                    "line": 640,
                                                    "column": 44
                                                  },
                                                  "identifierName": "map"
                                                },
                                                "name": "map"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ArrowFunctionExpression",
                                                "start": 23608,
                                                "end": 24046,
                                                "loc": {
                                                  "start": {
                                                    "line": 640,
                                                    "column": 45
                                                  },
                                                  "end": {
                                                    "line": 650,
                                                    "column": 9
                                                  }
                                                },
                                                "id": null,
                                                "generator": false,
                                                "expression": false,
                                                "async": false,
                                                "params": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 23608,
                                                    "end": 23626,
                                                    "loc": {
                                                      "start": {
                                                        "line": 640,
                                                        "column": 45
                                                      },
                                                      "end": {
                                                        "line": 640,
                                                        "column": 63
                                                      },
                                                      "identifierName": "unassociatedObject"
                                                    },
                                                    "name": "unassociatedObject"
                                                  }
                                                ],
                                                "body": {
                                                  "type": "BlockStatement",
                                                  "start": 23630,
                                                  "end": 24046,
                                                  "loc": {
                                                    "start": {
                                                      "line": 640,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 650,
                                                      "column": 9
                                                    }
                                                  },
                                                  "body": [
                                                    {
                                                      "type": "VariableDeclaration",
                                                      "start": 23642,
                                                      "end": 23719,
                                                      "loc": {
                                                        "start": {
                                                          "line": 641,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 641,
                                                          "column": 87
                                                        }
                                                      },
                                                      "declarations": [
                                                        {
                                                          "type": "VariableDeclarator",
                                                          "start": 23648,
                                                          "end": 23718,
                                                          "loc": {
                                                            "start": {
                                                              "line": 641,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 641,
                                                              "column": 86
                                                            }
                                                          },
                                                          "id": {
                                                            "type": "Identifier",
                                                            "start": 23648,
                                                            "end": 23665,
                                                            "loc": {
                                                              "start": {
                                                                "line": 641,
                                                                "column": 16
                                                              },
                                                              "end": {
                                                                "line": 641,
                                                                "column": 33
                                                              },
                                                              "identifierName": "throughAttributes"
                                                            },
                                                            "name": "throughAttributes"
                                                          },
                                                          "init": {
                                                            "type": "MemberExpression",
                                                            "start": 23668,
                                                            "end": 23718,
                                                            "loc": {
                                                              "start": {
                                                                "line": 641,
                                                                "column": 36
                                                              },
                                                              "end": {
                                                                "line": 641,
                                                                "column": 86
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 23668,
                                                              "end": 23686,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 641,
                                                                  "column": 36
                                                                },
                                                                "end": {
                                                                  "line": 641,
                                                                  "column": 54
                                                                },
                                                                "identifierName": "unassociatedObject"
                                                              },
                                                              "name": "unassociatedObject"
                                                            },
                                                            "property": {
                                                              "type": "MemberExpression",
                                                              "start": 23687,
                                                              "end": 23717,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 641,
                                                                  "column": 55
                                                                },
                                                                "end": {
                                                                  "line": 641,
                                                                  "column": 85
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "MemberExpression",
                                                                "start": 23687,
                                                                "end": 23712,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 641,
                                                                    "column": 55
                                                                  },
                                                                  "end": {
                                                                    "line": 641,
                                                                    "column": 80
                                                                  }
                                                                },
                                                                "object": {
                                                                  "type": "MemberExpression",
                                                                  "start": 23687,
                                                                  "end": 23706,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 641,
                                                                      "column": 55
                                                                    },
                                                                    "end": {
                                                                      "line": 641,
                                                                      "column": 74
                                                                    }
                                                                  },
                                                                  "object": {
                                                                    "type": "Identifier",
                                                                    "start": 23687,
                                                                    "end": 23698,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 641,
                                                                        "column": 55
                                                                      },
                                                                      "end": {
                                                                        "line": 641,
                                                                        "column": 66
                                                                      },
                                                                      "identifierName": "association"
                                                                    },
                                                                    "name": "association"
                                                                  },
                                                                  "property": {
                                                                    "type": "Identifier",
                                                                    "start": 23699,
                                                                    "end": 23706,
                                                                    "loc": {
                                                                      "start": {
                                                                        "line": 641,
                                                                        "column": 67
                                                                      },
                                                                      "end": {
                                                                        "line": 641,
                                                                        "column": 74
                                                                      },
                                                                      "identifierName": "through"
                                                                    },
                                                                    "name": "through"
                                                                  },
                                                                  "computed": false
                                                                },
                                                                "property": {
                                                                  "type": "Identifier",
                                                                  "start": 23707,
                                                                  "end": 23712,
                                                                  "loc": {
                                                                    "start": {
                                                                      "line": 641,
                                                                      "column": 75
                                                                    },
                                                                    "end": {
                                                                      "line": 641,
                                                                      "column": 80
                                                                    },
                                                                    "identifierName": "model"
                                                                  },
                                                                  "name": "model"
                                                                },
                                                                "computed": false
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 23713,
                                                                "end": 23717,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 641,
                                                                    "column": 81
                                                                  },
                                                                  "end": {
                                                                    "line": 641,
                                                                    "column": 85
                                                                  },
                                                                  "identifierName": "name"
                                                                },
                                                                "name": "name"
                                                              },
                                                              "computed": false
                                                            },
                                                            "computed": true
                                                          }
                                                        }
                                                      ],
                                                      "kind": "const"
                                                    },
                                                    {
                                                      "type": "VariableDeclaration",
                                                      "start": 23730,
                                                      "end": 23802,
                                                      "loc": {
                                                        "start": {
                                                          "line": 642,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 642,
                                                          "column": 82
                                                        }
                                                      },
                                                      "declarations": [
                                                        {
                                                          "type": "VariableDeclarator",
                                                          "start": 23736,
                                                          "end": 23801,
                                                          "loc": {
                                                            "start": {
                                                              "line": 642,
                                                              "column": 16
                                                            },
                                                            "end": {
                                                              "line": 642,
                                                              "column": 81
                                                            }
                                                          },
                                                          "id": {
                                                            "type": "Identifier",
                                                            "start": 23736,
                                                            "end": 23746,
                                                            "loc": {
                                                              "start": {
                                                                "line": 642,
                                                                "column": 16
                                                              },
                                                              "end": {
                                                                "line": 642,
                                                                "column": 26
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "init": {
                                                            "type": "CallExpression",
                                                            "start": 23749,
                                                            "end": 23801,
                                                            "loc": {
                                                              "start": {
                                                                "line": 642,
                                                                "column": 29
                                                              },
                                                              "end": {
                                                                "line": 642,
                                                                "column": 81
                                                              }
                                                            },
                                                            "callee": {
                                                              "type": "MemberExpression",
                                                              "start": 23749,
                                                              "end": 23759,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 642,
                                                                  "column": 29
                                                                },
                                                                "end": {
                                                                  "line": 642,
                                                                  "column": 39
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 23749,
                                                                "end": 23750,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 642,
                                                                    "column": 29
                                                                  },
                                                                  "end": {
                                                                    "line": 642,
                                                                    "column": 30
                                                                  },
                                                                  "identifierName": "_"
                                                                },
                                                                "name": "_"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 23751,
                                                                "end": 23759,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 642,
                                                                    "column": 31
                                                                  },
                                                                  "end": {
                                                                    "line": 642,
                                                                    "column": 39
                                                                  },
                                                                  "identifierName": "defaults"
                                                                },
                                                                "name": "defaults"
                                                              },
                                                              "computed": false
                                                            },
                                                            "arguments": [
                                                              {
                                                                "type": "ObjectExpression",
                                                                "start": 23760,
                                                                "end": 23762,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 642,
                                                                    "column": 40
                                                                  },
                                                                  "end": {
                                                                    "line": 642,
                                                                    "column": 42
                                                                  }
                                                                },
                                                                "properties": []
                                                              },
                                                              {
                                                                "type": "Identifier",
                                                                "start": 23764,
                                                                "end": 23781,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 642,
                                                                    "column": 44
                                                                  },
                                                                  "end": {
                                                                    "line": 642,
                                                                    "column": 61
                                                                  },
                                                                  "identifierName": "throughAttributes"
                                                                },
                                                                "name": "throughAttributes"
                                                              },
                                                              {
                                                                "type": "Identifier",
                                                                "start": 23783,
                                                                "end": 23800,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 642,
                                                                    "column": 63
                                                                  },
                                                                  "end": {
                                                                    "line": 642,
                                                                    "column": 80
                                                                  },
                                                                  "identifierName": "defaultAttributes"
                                                                },
                                                                "name": "defaultAttributes"
                                                              }
                                                            ]
                                                          }
                                                        }
                                                      ],
                                                      "kind": "const"
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 23814,
                                                      "end": 23869,
                                                      "loc": {
                                                        "start": {
                                                          "line": 644,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 644,
                                                          "column": 65
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "AssignmentExpression",
                                                        "start": 23814,
                                                        "end": 23868,
                                                        "loc": {
                                                          "start": {
                                                            "line": 644,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 644,
                                                            "column": 64
                                                          }
                                                        },
                                                        "operator": "=",
                                                        "left": {
                                                          "type": "MemberExpression",
                                                          "start": 23814,
                                                          "end": 23836,
                                                          "loc": {
                                                            "start": {
                                                              "line": 644,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 644,
                                                              "column": 32
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 23814,
                                                            "end": 23824,
                                                            "loc": {
                                                              "start": {
                                                                "line": 644,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 644,
                                                                "column": 20
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 23825,
                                                            "end": 23835,
                                                            "loc": {
                                                              "start": {
                                                                "line": 644,
                                                                "column": 21
                                                              },
                                                              "end": {
                                                                "line": 644,
                                                                "column": 31
                                                              },
                                                              "identifierName": "identifier"
                                                            },
                                                            "name": "identifier"
                                                          },
                                                          "computed": true
                                                        },
                                                        "right": {
                                                          "type": "CallExpression",
                                                          "start": 23839,
                                                          "end": 23868,
                                                          "loc": {
                                                            "start": {
                                                              "line": 644,
                                                              "column": 35
                                                            },
                                                            "end": {
                                                              "line": 644,
                                                              "column": 64
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 23839,
                                                            "end": 23857,
                                                            "loc": {
                                                              "start": {
                                                                "line": 644,
                                                                "column": 35
                                                              },
                                                              "end": {
                                                                "line": 644,
                                                                "column": 53
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 23839,
                                                              "end": 23853,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 644,
                                                                  "column": 35
                                                                },
                                                                "end": {
                                                                  "line": 644,
                                                                  "column": 49
                                                                },
                                                                "identifierName": "sourceInstance"
                                                              },
                                                              "name": "sourceInstance"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 23854,
                                                              "end": 23857,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 644,
                                                                  "column": 50
                                                                },
                                                                "end": {
                                                                  "line": 644,
                                                                  "column": 53
                                                                },
                                                                "identifierName": "get"
                                                              },
                                                              "name": "get"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 23858,
                                                              "end": 23867,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 644,
                                                                  "column": 54
                                                                },
                                                                "end": {
                                                                  "line": 644,
                                                                  "column": 63
                                                                },
                                                                "identifierName": "sourceKey"
                                                              },
                                                              "name": "sourceKey"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 23880,
                                                      "end": 23946,
                                                      "loc": {
                                                        "start": {
                                                          "line": 645,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 645,
                                                          "column": 76
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "AssignmentExpression",
                                                        "start": 23880,
                                                        "end": 23945,
                                                        "loc": {
                                                          "start": {
                                                            "line": 645,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 645,
                                                            "column": 75
                                                          }
                                                        },
                                                        "operator": "=",
                                                        "left": {
                                                          "type": "MemberExpression",
                                                          "start": 23880,
                                                          "end": 23909,
                                                          "loc": {
                                                            "start": {
                                                              "line": 645,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 645,
                                                              "column": 39
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 23880,
                                                            "end": 23890,
                                                            "loc": {
                                                              "start": {
                                                                "line": 645,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 645,
                                                                "column": 20
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 23891,
                                                            "end": 23908,
                                                            "loc": {
                                                              "start": {
                                                                "line": 645,
                                                                "column": 21
                                                              },
                                                              "end": {
                                                                "line": 645,
                                                                "column": 38
                                                              },
                                                              "identifierName": "foreignIdentifier"
                                                            },
                                                            "name": "foreignIdentifier"
                                                          },
                                                          "computed": true
                                                        },
                                                        "right": {
                                                          "type": "CallExpression",
                                                          "start": 23912,
                                                          "end": 23945,
                                                          "loc": {
                                                            "start": {
                                                              "line": 645,
                                                              "column": 42
                                                            },
                                                            "end": {
                                                              "line": 645,
                                                              "column": 75
                                                            }
                                                          },
                                                          "callee": {
                                                            "type": "MemberExpression",
                                                            "start": 23912,
                                                            "end": 23934,
                                                            "loc": {
                                                              "start": {
                                                                "line": 645,
                                                                "column": 42
                                                              },
                                                              "end": {
                                                                "line": 645,
                                                                "column": 64
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "Identifier",
                                                              "start": 23912,
                                                              "end": 23930,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 645,
                                                                  "column": 42
                                                                },
                                                                "end": {
                                                                  "line": 645,
                                                                  "column": 60
                                                                },
                                                                "identifierName": "unassociatedObject"
                                                              },
                                                              "name": "unassociatedObject"
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 23931,
                                                              "end": 23934,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 645,
                                                                  "column": 61
                                                                },
                                                                "end": {
                                                                  "line": 645,
                                                                  "column": 64
                                                                },
                                                                "identifierName": "get"
                                                              },
                                                              "name": "get"
                                                            },
                                                            "computed": false
                                                          },
                                                          "arguments": [
                                                            {
                                                              "type": "Identifier",
                                                              "start": 23935,
                                                              "end": 23944,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 645,
                                                                  "column": 65
                                                                },
                                                                "end": {
                                                                  "line": 645,
                                                                  "column": 74
                                                                },
                                                                "identifierName": "targetKey"
                                                              },
                                                              "name": "targetKey"
                                                            }
                                                          ]
                                                        }
                                                      }
                                                    },
                                                    {
                                                      "type": "ExpressionStatement",
                                                      "start": 23958,
                                                      "end": 24006,
                                                      "loc": {
                                                        "start": {
                                                          "line": 647,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 647,
                                                          "column": 58
                                                        }
                                                      },
                                                      "expression": {
                                                        "type": "CallExpression",
                                                        "start": 23958,
                                                        "end": 24005,
                                                        "loc": {
                                                          "start": {
                                                            "line": 647,
                                                            "column": 10
                                                          },
                                                          "end": {
                                                            "line": 647,
                                                            "column": 57
                                                          }
                                                        },
                                                        "callee": {
                                                          "type": "MemberExpression",
                                                          "start": 23958,
                                                          "end": 23966,
                                                          "loc": {
                                                            "start": {
                                                              "line": 647,
                                                              "column": 10
                                                            },
                                                            "end": {
                                                              "line": 647,
                                                              "column": 18
                                                            }
                                                          },
                                                          "object": {
                                                            "type": "Identifier",
                                                            "start": 23958,
                                                            "end": 23959,
                                                            "loc": {
                                                              "start": {
                                                                "line": 647,
                                                                "column": 10
                                                              },
                                                              "end": {
                                                                "line": 647,
                                                                "column": 11
                                                              },
                                                              "identifierName": "_"
                                                            },
                                                            "name": "_"
                                                          },
                                                          "property": {
                                                            "type": "Identifier",
                                                            "start": 23960,
                                                            "end": 23966,
                                                            "loc": {
                                                              "start": {
                                                                "line": 647,
                                                                "column": 12
                                                              },
                                                              "end": {
                                                                "line": 647,
                                                                "column": 18
                                                              },
                                                              "identifierName": "assign"
                                                            },
                                                            "name": "assign"
                                                          },
                                                          "computed": false
                                                        },
                                                        "arguments": [
                                                          {
                                                            "type": "Identifier",
                                                            "start": 23967,
                                                            "end": 23977,
                                                            "loc": {
                                                              "start": {
                                                                "line": 647,
                                                                "column": 19
                                                              },
                                                              "end": {
                                                                "line": 647,
                                                                "column": 29
                                                              },
                                                              "identifierName": "attributes"
                                                            },
                                                            "name": "attributes"
                                                          },
                                                          {
                                                            "type": "MemberExpression",
                                                            "start": 23979,
                                                            "end": 24004,
                                                            "loc": {
                                                              "start": {
                                                                "line": 647,
                                                                "column": 31
                                                              },
                                                              "end": {
                                                                "line": 647,
                                                                "column": 56
                                                              }
                                                            },
                                                            "object": {
                                                              "type": "MemberExpression",
                                                              "start": 23979,
                                                              "end": 23998,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 647,
                                                                  "column": 31
                                                                },
                                                                "end": {
                                                                  "line": 647,
                                                                  "column": 50
                                                                }
                                                              },
                                                              "object": {
                                                                "type": "Identifier",
                                                                "start": 23979,
                                                                "end": 23990,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 647,
                                                                    "column": 31
                                                                  },
                                                                  "end": {
                                                                    "line": 647,
                                                                    "column": 42
                                                                  },
                                                                  "identifierName": "association"
                                                                },
                                                                "name": "association"
                                                              },
                                                              "property": {
                                                                "type": "Identifier",
                                                                "start": 23991,
                                                                "end": 23998,
                                                                "loc": {
                                                                  "start": {
                                                                    "line": 647,
                                                                    "column": 43
                                                                  },
                                                                  "end": {
                                                                    "line": 647,
                                                                    "column": 50
                                                                  },
                                                                  "identifierName": "through"
                                                                },
                                                                "name": "through"
                                                              },
                                                              "computed": false
                                                            },
                                                            "property": {
                                                              "type": "Identifier",
                                                              "start": 23999,
                                                              "end": 24004,
                                                              "loc": {
                                                                "start": {
                                                                  "line": 647,
                                                                  "column": 51
                                                                },
                                                                "end": {
                                                                  "line": 647,
                                                                  "column": 56
                                                                },
                                                                "identifierName": "scope"
                                                              },
                                                              "name": "scope"
                                                            },
                                                            "computed": false
                                                          }
                                                        ]
                                                      }
                                                    },
                                                    {
                                                      "type": "ReturnStatement",
                                                      "start": 24018,
                                                      "end": 24036,
                                                      "loc": {
                                                        "start": {
                                                          "line": 649,
                                                          "column": 10
                                                        },
                                                        "end": {
                                                          "line": 649,
                                                          "column": 28
                                                        }
                                                      },
                                                      "argument": {
                                                        "type": "Identifier",
                                                        "start": 24025,
                                                        "end": 24035,
                                                        "loc": {
                                                          "start": {
                                                            "line": 649,
                                                            "column": 17
                                                          },
                                                          "end": {
                                                            "line": 649,
                                                            "column": 27
                                                          },
                                                          "identifierName": "attributes"
                                                        },
                                                        "name": "attributes"
                                                      }
                                                    }
                                                  ],
                                                  "directives": []
                                                }
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 24058,
                                      "end": 24155,
                                      "loc": {
                                        "start": {
                                          "line": 652,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 652,
                                          "column": 105
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 24058,
                                        "end": 24154,
                                        "loc": {
                                          "start": {
                                            "line": 652,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 652,
                                            "column": 104
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24058,
                                          "end": 24071,
                                          "loc": {
                                            "start": {
                                              "line": 652,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 652,
                                              "column": 21
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24058,
                                            "end": 24066,
                                            "loc": {
                                              "start": {
                                                "line": 652,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 652,
                                                "column": 16
                                              },
                                              "identifierName": "promises"
                                            },
                                            "name": "promises"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24067,
                                            "end": 24071,
                                            "loc": {
                                              "start": {
                                                "line": 652,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 652,
                                                "column": 21
                                              },
                                              "identifierName": "push"
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 24072,
                                            "end": 24153,
                                            "loc": {
                                              "start": {
                                                "line": 652,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 652,
                                                "column": 103
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24072,
                                              "end": 24108,
                                              "loc": {
                                                "start": {
                                                  "line": 652,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 652,
                                                  "column": 58
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 24072,
                                                "end": 24097,
                                                "loc": {
                                                  "start": {
                                                    "line": 652,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 652,
                                                    "column": 47
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 24072,
                                                  "end": 24091,
                                                  "loc": {
                                                    "start": {
                                                      "line": 652,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 652,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 24072,
                                                    "end": 24083,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 33
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24084,
                                                    "end": 24091,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 41
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 24092,
                                                  "end": 24097,
                                                  "loc": {
                                                    "start": {
                                                      "line": 652,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 652,
                                                      "column": 47
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24098,
                                                "end": 24108,
                                                "loc": {
                                                  "start": {
                                                    "line": 652,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 652,
                                                    "column": 58
                                                  },
                                                  "identifierName": "bulkCreate"
                                                },
                                                "name": "bulkCreate"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 24109,
                                                "end": 24113,
                                                "loc": {
                                                  "start": {
                                                    "line": 652,
                                                    "column": 59
                                                  },
                                                  "end": {
                                                    "line": 652,
                                                    "column": 63
                                                  },
                                                  "identifierName": "bulk"
                                                },
                                                "name": "bulk"
                                              },
                                              {
                                                "type": "CallExpression",
                                                "start": 24115,
                                                "end": 24152,
                                                "loc": {
                                                  "start": {
                                                    "line": 652,
                                                    "column": 65
                                                  },
                                                  "end": {
                                                    "line": 652,
                                                    "column": 102
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 24115,
                                                  "end": 24123,
                                                  "loc": {
                                                    "start": {
                                                      "line": 652,
                                                      "column": 65
                                                    },
                                                    "end": {
                                                      "line": 652,
                                                      "column": 73
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 24115,
                                                    "end": 24116,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 65
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 66
                                                      },
                                                      "identifierName": "_"
                                                    },
                                                    "name": "_"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24117,
                                                    "end": 24123,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 67
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 73
                                                      },
                                                      "identifierName": "assign"
                                                    },
                                                    "name": "assign"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "ObjectExpression",
                                                    "start": 24124,
                                                    "end": 24142,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 74
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 92
                                                      }
                                                    },
                                                    "properties": [
                                                      {
                                                        "type": "ObjectProperty",
                                                        "start": 24126,
                                                        "end": 24140,
                                                        "loc": {
                                                          "start": {
                                                            "line": 652,
                                                            "column": 76
                                                          },
                                                          "end": {
                                                            "line": 652,
                                                            "column": 90
                                                          }
                                                        },
                                                        "method": false,
                                                        "shorthand": false,
                                                        "computed": false,
                                                        "key": {
                                                          "type": "Identifier",
                                                          "start": 24126,
                                                          "end": 24134,
                                                          "loc": {
                                                            "start": {
                                                              "line": 652,
                                                              "column": 76
                                                            },
                                                            "end": {
                                                              "line": 652,
                                                              "column": 84
                                                            },
                                                            "identifierName": "validate"
                                                          },
                                                          "name": "validate"
                                                        },
                                                        "value": {
                                                          "type": "BooleanLiteral",
                                                          "start": 24136,
                                                          "end": 24140,
                                                          "loc": {
                                                            "start": {
                                                              "line": 652,
                                                              "column": 86
                                                            },
                                                            "end": {
                                                              "line": 652,
                                                              "column": 90
                                                            }
                                                          },
                                                          "value": true
                                                        }
                                                      }
                                                    ]
                                                  },
                                                  {
                                                    "type": "Identifier",
                                                    "start": 24144,
                                                    "end": 24151,
                                                    "loc": {
                                                      "start": {
                                                        "line": 652,
                                                        "column": 94
                                                      },
                                                      "end": {
                                                        "line": 652,
                                                        "column": 101
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                },
                                "alternate": null
                              },
                              {
                                "type": "ForOfStatement",
                                "start": 24171,
                                "end": 24864,
                                "loc": {
                                  "start": {
                                    "line": 655,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 668,
                                    "column": 7
                                  }
                                },
                                "left": {
                                  "type": "VariableDeclaration",
                                  "start": 24176,
                                  "end": 24187,
                                  "loc": {
                                    "start": {
                                      "line": 655,
                                      "column": 11
                                    },
                                    "end": {
                                      "line": 655,
                                      "column": 22
                                    }
                                  },
                                  "declarations": [
                                    {
                                      "type": "VariableDeclarator",
                                      "start": 24182,
                                      "end": 24187,
                                      "loc": {
                                        "start": {
                                          "line": 655,
                                          "column": 17
                                        },
                                        "end": {
                                          "line": 655,
                                          "column": 22
                                        }
                                      },
                                      "id": {
                                        "type": "Identifier",
                                        "start": 24182,
                                        "end": 24187,
                                        "loc": {
                                          "start": {
                                            "line": 655,
                                            "column": 17
                                          },
                                          "end": {
                                            "line": 655,
                                            "column": 22
                                          },
                                          "identifierName": "assoc"
                                        },
                                        "name": "assoc"
                                      },
                                      "init": null
                                    }
                                  ],
                                  "kind": "const"
                                },
                                "right": {
                                  "type": "Identifier",
                                  "start": 24191,
                                  "end": 24210,
                                  "loc": {
                                    "start": {
                                      "line": 655,
                                      "column": 26
                                    },
                                    "end": {
                                      "line": 655,
                                      "column": 45
                                    },
                                    "identifierName": "changedAssociations"
                                  },
                                  "name": "changedAssociations"
                                },
                                "body": {
                                  "type": "BlockStatement",
                                  "start": 24212,
                                  "end": 24864,
                                  "loc": {
                                    "start": {
                                      "line": 655,
                                      "column": 47
                                    },
                                    "end": {
                                      "line": 668,
                                      "column": 7
                                    }
                                  },
                                  "body": [
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 24222,
                                      "end": 24284,
                                      "loc": {
                                        "start": {
                                          "line": 656,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 656,
                                          "column": 70
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 24226,
                                          "end": 24283,
                                          "loc": {
                                            "start": {
                                              "line": 656,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 656,
                                              "column": 69
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 24226,
                                            "end": 24243,
                                            "loc": {
                                              "start": {
                                                "line": 656,
                                                "column": 12
                                              },
                                              "end": {
                                                "line": 656,
                                                "column": 29
                                              },
                                              "identifierName": "throughAttributes"
                                            },
                                            "name": "throughAttributes"
                                          },
                                          "init": {
                                            "type": "MemberExpression",
                                            "start": 24246,
                                            "end": 24283,
                                            "loc": {
                                              "start": {
                                                "line": 656,
                                                "column": 32
                                              },
                                              "end": {
                                                "line": 656,
                                                "column": 69
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24246,
                                              "end": 24251,
                                              "loc": {
                                                "start": {
                                                  "line": 656,
                                                  "column": 32
                                                },
                                                "end": {
                                                  "line": 656,
                                                  "column": 37
                                                },
                                                "identifierName": "assoc"
                                              },
                                              "name": "assoc"
                                            },
                                            "property": {
                                              "type": "MemberExpression",
                                              "start": 24252,
                                              "end": 24282,
                                              "loc": {
                                                "start": {
                                                  "line": 656,
                                                  "column": 38
                                                },
                                                "end": {
                                                  "line": 656,
                                                  "column": 68
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 24252,
                                                "end": 24277,
                                                "loc": {
                                                  "start": {
                                                    "line": 656,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 656,
                                                    "column": 63
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 24252,
                                                  "end": 24271,
                                                  "loc": {
                                                    "start": {
                                                      "line": 656,
                                                      "column": 38
                                                    },
                                                    "end": {
                                                      "line": 656,
                                                      "column": 57
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 24252,
                                                    "end": 24263,
                                                    "loc": {
                                                      "start": {
                                                        "line": 656,
                                                        "column": 38
                                                      },
                                                      "end": {
                                                        "line": 656,
                                                        "column": 49
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24264,
                                                    "end": 24271,
                                                    "loc": {
                                                      "start": {
                                                        "line": 656,
                                                        "column": 50
                                                      },
                                                      "end": {
                                                        "line": 656,
                                                        "column": 57
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 24272,
                                                  "end": 24277,
                                                  "loc": {
                                                    "start": {
                                                      "line": 656,
                                                      "column": 58
                                                    },
                                                    "end": {
                                                      "line": 656,
                                                      "column": 63
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24278,
                                                "end": 24282,
                                                "loc": {
                                                  "start": {
                                                    "line": 656,
                                                    "column": 64
                                                  },
                                                  "end": {
                                                    "line": 656,
                                                    "column": 68
                                                  },
                                                  "identifierName": "name"
                                                },
                                                "name": "name"
                                              },
                                              "computed": false
                                            },
                                            "computed": true
                                          }
                                        }
                                      ],
                                      "kind": "let"
                                    },
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 24293,
                                      "end": 24365,
                                      "loc": {
                                        "start": {
                                          "line": 657,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 657,
                                          "column": 80
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 24299,
                                          "end": 24364,
                                          "loc": {
                                            "start": {
                                              "line": 657,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 657,
                                              "column": 79
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 24299,
                                            "end": 24309,
                                            "loc": {
                                              "start": {
                                                "line": 657,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 657,
                                                "column": 24
                                              },
                                              "identifierName": "attributes"
                                            },
                                            "name": "attributes"
                                          },
                                          "init": {
                                            "type": "CallExpression",
                                            "start": 24312,
                                            "end": 24364,
                                            "loc": {
                                              "start": {
                                                "line": 657,
                                                "column": 27
                                              },
                                              "end": {
                                                "line": 657,
                                                "column": 79
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24312,
                                              "end": 24322,
                                              "loc": {
                                                "start": {
                                                  "line": 657,
                                                  "column": 27
                                                },
                                                "end": {
                                                  "line": 657,
                                                  "column": 37
                                                }
                                              },
                                              "object": {
                                                "type": "Identifier",
                                                "start": 24312,
                                                "end": 24313,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 27
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 28
                                                  },
                                                  "identifierName": "_"
                                                },
                                                "name": "_"
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24314,
                                                "end": 24322,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 29
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 37
                                                  },
                                                  "identifierName": "defaults"
                                                },
                                                "name": "defaults"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "ObjectExpression",
                                                "start": 24323,
                                                "end": 24325,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 38
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 40
                                                  }
                                                },
                                                "properties": []
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 24327,
                                                "end": 24344,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 42
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 59
                                                  },
                                                  "identifierName": "throughAttributes"
                                                },
                                                "name": "throughAttributes"
                                              },
                                              {
                                                "type": "Identifier",
                                                "start": 24346,
                                                "end": 24363,
                                                "loc": {
                                                  "start": {
                                                    "line": 657,
                                                    "column": 61
                                                  },
                                                  "end": {
                                                    "line": 657,
                                                    "column": 78
                                                  },
                                                  "identifierName": "defaultAttributes"
                                                },
                                                "name": "defaultAttributes"
                                              }
                                            ]
                                          }
                                        }
                                      ],
                                      "kind": "const"
                                    },
                                    {
                                      "type": "VariableDeclaration",
                                      "start": 24374,
                                      "end": 24391,
                                      "loc": {
                                        "start": {
                                          "line": 658,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 658,
                                          "column": 25
                                        }
                                      },
                                      "declarations": [
                                        {
                                          "type": "VariableDeclarator",
                                          "start": 24380,
                                          "end": 24390,
                                          "loc": {
                                            "start": {
                                              "line": 658,
                                              "column": 14
                                            },
                                            "end": {
                                              "line": 658,
                                              "column": 24
                                            }
                                          },
                                          "id": {
                                            "type": "Identifier",
                                            "start": 24380,
                                            "end": 24385,
                                            "loc": {
                                              "start": {
                                                "line": 658,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 658,
                                                "column": 19
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "init": {
                                            "type": "ObjectExpression",
                                            "start": 24388,
                                            "end": 24390,
                                            "loc": {
                                              "start": {
                                                "line": 658,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 658,
                                                "column": 24
                                              }
                                            },
                                            "properties": []
                                          }
                                        }
                                      ],
                                      "kind": "const",
                                      "trailingComments": [
                                        {
                                          "type": "CommentLine",
                                          "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
                                          "start": 24400,
                                          "end": 24527,
                                          "loc": {
                                            "start": {
                                              "line": 659,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 659,
                                              "column": 135
                                            }
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "IfStatement",
                                      "start": 24536,
                                      "end": 24641,
                                      "loc": {
                                        "start": {
                                          "line": 660,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 662,
                                          "column": 9
                                        }
                                      },
                                      "test": {
                                        "type": "BinaryExpression",
                                        "start": 24540,
                                        "end": 24594,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 12
                                          },
                                          "end": {
                                            "line": 660,
                                            "column": 66
                                          }
                                        },
                                        "left": {
                                          "type": "Identifier",
                                          "start": 24540,
                                          "end": 24557,
                                          "loc": {
                                            "start": {
                                              "line": 660,
                                              "column": 12
                                            },
                                            "end": {
                                              "line": 660,
                                              "column": 29
                                            },
                                            "identifierName": "throughAttributes"
                                          },
                                          "name": "throughAttributes",
                                          "leadingComments": null
                                        },
                                        "operator": "instanceof",
                                        "right": {
                                          "type": "MemberExpression",
                                          "start": 24569,
                                          "end": 24594,
                                          "loc": {
                                            "start": {
                                              "line": 660,
                                              "column": 41
                                            },
                                            "end": {
                                              "line": 660,
                                              "column": 66
                                            }
                                          },
                                          "object": {
                                            "type": "MemberExpression",
                                            "start": 24569,
                                            "end": 24588,
                                            "loc": {
                                              "start": {
                                                "line": 660,
                                                "column": 41
                                              },
                                              "end": {
                                                "line": 660,
                                                "column": 60
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24569,
                                              "end": 24580,
                                              "loc": {
                                                "start": {
                                                  "line": 660,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 660,
                                                  "column": 52
                                                },
                                                "identifierName": "association"
                                              },
                                              "name": "association"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24581,
                                              "end": 24588,
                                              "loc": {
                                                "start": {
                                                  "line": 660,
                                                  "column": 53
                                                },
                                                "end": {
                                                  "line": 660,
                                                  "column": 60
                                                },
                                                "identifierName": "through"
                                              },
                                              "name": "through"
                                            },
                                            "computed": false
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24589,
                                            "end": 24594,
                                            "loc": {
                                              "start": {
                                                "line": 660,
                                                "column": 61
                                              },
                                              "end": {
                                                "line": 660,
                                                "column": 66
                                              },
                                              "identifierName": "model"
                                            },
                                            "name": "model"
                                          },
                                          "computed": false
                                        },
                                        "leadingComments": null
                                      },
                                      "consequent": {
                                        "type": "BlockStatement",
                                        "start": 24596,
                                        "end": 24641,
                                        "loc": {
                                          "start": {
                                            "line": 660,
                                            "column": 68
                                          },
                                          "end": {
                                            "line": 662,
                                            "column": 9
                                          }
                                        },
                                        "body": [
                                          {
                                            "type": "ExpressionStatement",
                                            "start": 24608,
                                            "end": 24631,
                                            "loc": {
                                              "start": {
                                                "line": 661,
                                                "column": 10
                                              },
                                              "end": {
                                                "line": 661,
                                                "column": 33
                                              }
                                            },
                                            "expression": {
                                              "type": "AssignmentExpression",
                                              "start": 24608,
                                              "end": 24630,
                                              "loc": {
                                                "start": {
                                                  "line": 661,
                                                  "column": 10
                                                },
                                                "end": {
                                                  "line": 661,
                                                  "column": 32
                                                }
                                              },
                                              "operator": "=",
                                              "left": {
                                                "type": "Identifier",
                                                "start": 24608,
                                                "end": 24625,
                                                "loc": {
                                                  "start": {
                                                    "line": 661,
                                                    "column": 10
                                                  },
                                                  "end": {
                                                    "line": 661,
                                                    "column": 27
                                                  },
                                                  "identifierName": "throughAttributes"
                                                },
                                                "name": "throughAttributes"
                                              },
                                              "right": {
                                                "type": "ObjectExpression",
                                                "start": 24628,
                                                "end": 24630,
                                                "loc": {
                                                  "start": {
                                                    "line": 661,
                                                    "column": 30
                                                  },
                                                  "end": {
                                                    "line": 661,
                                                    "column": 32
                                                  }
                                                },
                                                "properties": []
                                              }
                                            }
                                          }
                                        ],
                                        "directives": []
                                      },
                                      "alternate": null,
                                      "leadingComments": [
                                        {
                                          "type": "CommentLine",
                                          "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
                                          "start": 24400,
                                          "end": 24527,
                                          "loc": {
                                            "start": {
                                              "line": 659,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 659,
                                              "column": 135
                                            }
                                          }
                                        }
                                      ]
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 24651,
                                      "end": 24701,
                                      "loc": {
                                        "start": {
                                          "line": 664,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 664,
                                          "column": 58
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 24651,
                                        "end": 24700,
                                        "loc": {
                                          "start": {
                                            "line": 664,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 664,
                                            "column": 57
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 24651,
                                          "end": 24668,
                                          "loc": {
                                            "start": {
                                              "line": 664,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 664,
                                              "column": 25
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24651,
                                            "end": 24656,
                                            "loc": {
                                              "start": {
                                                "line": 664,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 664,
                                                "column": 13
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24657,
                                            "end": 24667,
                                            "loc": {
                                              "start": {
                                                "line": 664,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 664,
                                                "column": 24
                                              },
                                              "identifierName": "identifier"
                                            },
                                            "name": "identifier"
                                          },
                                          "computed": true
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 24671,
                                          "end": 24700,
                                          "loc": {
                                            "start": {
                                              "line": 664,
                                              "column": 28
                                            },
                                            "end": {
                                              "line": 664,
                                              "column": 57
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 24671,
                                            "end": 24689,
                                            "loc": {
                                              "start": {
                                                "line": 664,
                                                "column": 28
                                              },
                                              "end": {
                                                "line": 664,
                                                "column": 46
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24671,
                                              "end": 24685,
                                              "loc": {
                                                "start": {
                                                  "line": 664,
                                                  "column": 28
                                                },
                                                "end": {
                                                  "line": 664,
                                                  "column": 42
                                                },
                                                "identifierName": "sourceInstance"
                                              },
                                              "name": "sourceInstance"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24686,
                                              "end": 24689,
                                              "loc": {
                                                "start": {
                                                  "line": 664,
                                                  "column": 43
                                                },
                                                "end": {
                                                  "line": 664,
                                                  "column": 46
                                                },
                                                "identifierName": "get"
                                              },
                                              "name": "get"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 24690,
                                              "end": 24699,
                                              "loc": {
                                                "start": {
                                                  "line": 664,
                                                  "column": 47
                                                },
                                                "end": {
                                                  "line": 664,
                                                  "column": 56
                                                },
                                                "identifierName": "sourceKey"
                                              },
                                              "name": "sourceKey"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 24710,
                                      "end": 24758,
                                      "loc": {
                                        "start": {
                                          "line": 665,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 665,
                                          "column": 56
                                        }
                                      },
                                      "expression": {
                                        "type": "AssignmentExpression",
                                        "start": 24710,
                                        "end": 24757,
                                        "loc": {
                                          "start": {
                                            "line": 665,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 665,
                                            "column": 55
                                          }
                                        },
                                        "operator": "=",
                                        "left": {
                                          "type": "MemberExpression",
                                          "start": 24710,
                                          "end": 24734,
                                          "loc": {
                                            "start": {
                                              "line": 665,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 665,
                                              "column": 32
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24710,
                                            "end": 24715,
                                            "loc": {
                                              "start": {
                                                "line": 665,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 665,
                                                "column": 13
                                              },
                                              "identifierName": "where"
                                            },
                                            "name": "where"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24716,
                                            "end": 24733,
                                            "loc": {
                                              "start": {
                                                "line": 665,
                                                "column": 14
                                              },
                                              "end": {
                                                "line": 665,
                                                "column": 31
                                              },
                                              "identifierName": "foreignIdentifier"
                                            },
                                            "name": "foreignIdentifier"
                                          },
                                          "computed": true
                                        },
                                        "right": {
                                          "type": "CallExpression",
                                          "start": 24737,
                                          "end": 24757,
                                          "loc": {
                                            "start": {
                                              "line": 665,
                                              "column": 35
                                            },
                                            "end": {
                                              "line": 665,
                                              "column": 55
                                            }
                                          },
                                          "callee": {
                                            "type": "MemberExpression",
                                            "start": 24737,
                                            "end": 24746,
                                            "loc": {
                                              "start": {
                                                "line": 665,
                                                "column": 35
                                              },
                                              "end": {
                                                "line": 665,
                                                "column": 44
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 24737,
                                              "end": 24742,
                                              "loc": {
                                                "start": {
                                                  "line": 665,
                                                  "column": 35
                                                },
                                                "end": {
                                                  "line": 665,
                                                  "column": 40
                                                },
                                                "identifierName": "assoc"
                                              },
                                              "name": "assoc"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 24743,
                                              "end": 24746,
                                              "loc": {
                                                "start": {
                                                  "line": 665,
                                                  "column": 41
                                                },
                                                "end": {
                                                  "line": 665,
                                                  "column": 44
                                                },
                                                "identifierName": "get"
                                              },
                                              "name": "get"
                                            },
                                            "computed": false
                                          },
                                          "arguments": [
                                            {
                                              "type": "Identifier",
                                              "start": 24747,
                                              "end": 24756,
                                              "loc": {
                                                "start": {
                                                  "line": 665,
                                                  "column": 45
                                                },
                                                "end": {
                                                  "line": 665,
                                                  "column": 54
                                                },
                                                "identifierName": "targetKey"
                                              },
                                              "name": "targetKey"
                                            }
                                          ]
                                        }
                                      }
                                    },
                                    {
                                      "type": "ExpressionStatement",
                                      "start": 24768,
                                      "end": 24856,
                                      "loc": {
                                        "start": {
                                          "line": 667,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 667,
                                          "column": 96
                                        }
                                      },
                                      "expression": {
                                        "type": "CallExpression",
                                        "start": 24768,
                                        "end": 24855,
                                        "loc": {
                                          "start": {
                                            "line": 667,
                                            "column": 8
                                          },
                                          "end": {
                                            "line": 667,
                                            "column": 95
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 24768,
                                          "end": 24781,
                                          "loc": {
                                            "start": {
                                              "line": 667,
                                              "column": 8
                                            },
                                            "end": {
                                              "line": 667,
                                              "column": 21
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 24768,
                                            "end": 24776,
                                            "loc": {
                                              "start": {
                                                "line": 667,
                                                "column": 8
                                              },
                                              "end": {
                                                "line": 667,
                                                "column": 16
                                              },
                                              "identifierName": "promises"
                                            },
                                            "name": "promises"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 24777,
                                            "end": 24781,
                                            "loc": {
                                              "start": {
                                                "line": 667,
                                                "column": 17
                                              },
                                              "end": {
                                                "line": 667,
                                                "column": 21
                                              },
                                              "identifierName": "push"
                                            },
                                            "name": "push"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "CallExpression",
                                            "start": 24782,
                                            "end": 24854,
                                            "loc": {
                                              "start": {
                                                "line": 667,
                                                "column": 22
                                              },
                                              "end": {
                                                "line": 667,
                                                "column": 94
                                              }
                                            },
                                            "callee": {
                                              "type": "MemberExpression",
                                              "start": 24782,
                                              "end": 24814,
                                              "loc": {
                                                "start": {
                                                  "line": 667,
                                                  "column": 22
                                                },
                                                "end": {
                                                  "line": 667,
                                                  "column": 54
                                                }
                                              },
                                              "object": {
                                                "type": "MemberExpression",
                                                "start": 24782,
                                                "end": 24807,
                                                "loc": {
                                                  "start": {
                                                    "line": 667,
                                                    "column": 22
                                                  },
                                                  "end": {
                                                    "line": 667,
                                                    "column": 47
                                                  }
                                                },
                                                "object": {
                                                  "type": "MemberExpression",
                                                  "start": 24782,
                                                  "end": 24801,
                                                  "loc": {
                                                    "start": {
                                                      "line": 667,
                                                      "column": 22
                                                    },
                                                    "end": {
                                                      "line": 667,
                                                      "column": 41
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 24782,
                                                    "end": 24793,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 22
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 33
                                                      },
                                                      "identifierName": "association"
                                                    },
                                                    "name": "association"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24794,
                                                    "end": 24801,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 34
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 41
                                                      },
                                                      "identifierName": "through"
                                                    },
                                                    "name": "through"
                                                  },
                                                  "computed": false
                                                },
                                                "property": {
                                                  "type": "Identifier",
                                                  "start": 24802,
                                                  "end": 24807,
                                                  "loc": {
                                                    "start": {
                                                      "line": 667,
                                                      "column": 42
                                                    },
                                                    "end": {
                                                      "line": 667,
                                                      "column": 47
                                                    },
                                                    "identifierName": "model"
                                                  },
                                                  "name": "model"
                                                },
                                                "computed": false
                                              },
                                              "property": {
                                                "type": "Identifier",
                                                "start": 24808,
                                                "end": 24814,
                                                "loc": {
                                                  "start": {
                                                    "line": 667,
                                                    "column": 48
                                                  },
                                                  "end": {
                                                    "line": 667,
                                                    "column": 54
                                                  },
                                                  "identifierName": "update"
                                                },
                                                "name": "update"
                                              },
                                              "computed": false
                                            },
                                            "arguments": [
                                              {
                                                "type": "Identifier",
                                                "start": 24815,
                                                "end": 24825,
                                                "loc": {
                                                  "start": {
                                                    "line": 667,
                                                    "column": 55
                                                  },
                                                  "end": {
                                                    "line": 667,
                                                    "column": 65
                                                  },
                                                  "identifierName": "attributes"
                                                },
                                                "name": "attributes"
                                              },
                                              {
                                                "type": "CallExpression",
                                                "start": 24827,
                                                "end": 24853,
                                                "loc": {
                                                  "start": {
                                                    "line": 667,
                                                    "column": 67
                                                  },
                                                  "end": {
                                                    "line": 667,
                                                    "column": 93
                                                  }
                                                },
                                                "callee": {
                                                  "type": "MemberExpression",
                                                  "start": 24827,
                                                  "end": 24835,
                                                  "loc": {
                                                    "start": {
                                                      "line": 667,
                                                      "column": 67
                                                    },
                                                    "end": {
                                                      "line": 667,
                                                      "column": 75
                                                    }
                                                  },
                                                  "object": {
                                                    "type": "Identifier",
                                                    "start": 24827,
                                                    "end": 24828,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 67
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 68
                                                      },
                                                      "identifierName": "_"
                                                    },
                                                    "name": "_"
                                                  },
                                                  "property": {
                                                    "type": "Identifier",
                                                    "start": 24829,
                                                    "end": 24835,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 69
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 75
                                                      },
                                                      "identifierName": "extend"
                                                    },
                                                    "name": "extend"
                                                  },
                                                  "computed": false
                                                },
                                                "arguments": [
                                                  {
                                                    "type": "Identifier",
                                                    "start": 24836,
                                                    "end": 24843,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 76
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 83
                                                      },
                                                      "identifierName": "options"
                                                    },
                                                    "name": "options"
                                                  },
                                                  {
                                                    "type": "ObjectExpression",
                                                    "start": 24845,
                                                    "end": 24852,
                                                    "loc": {
                                                      "start": {
                                                        "line": 667,
                                                        "column": 85
                                                      },
                                                      "end": {
                                                        "line": 667,
                                                        "column": 92
                                                      }
                                                    },
                                                    "properties": [
                                                      {
                                                        "type": "ObjectProperty",
                                                        "start": 24846,
                                                        "end": 24851,
                                                        "loc": {
                                                          "start": {
                                                            "line": 667,
                                                            "column": 86
                                                          },
                                                          "end": {
                                                            "line": 667,
                                                            "column": 91
                                                          }
                                                        },
                                                        "method": false,
                                                        "shorthand": true,
                                                        "computed": false,
                                                        "key": {
                                                          "type": "Identifier",
                                                          "start": 24846,
                                                          "end": 24851,
                                                          "loc": {
                                                            "start": {
                                                              "line": 667,
                                                              "column": 86
                                                            },
                                                            "end": {
                                                              "line": 667,
                                                              "column": 91
                                                            },
                                                            "identifierName": "where"
                                                          },
                                                          "name": "where"
                                                        },
                                                        "value": {
                                                          "type": "Identifier",
                                                          "start": 24846,
                                                          "end": 24851,
                                                          "loc": {
                                                            "start": {
                                                              "line": 667,
                                                              "column": 86
                                                            },
                                                            "end": {
                                                              "line": 667,
                                                              "column": 91
                                                            },
                                                            "identifierName": "where"
                                                          },
                                                          "name": "where"
                                                        },
                                                        "extra": {
                                                          "shorthand": true
                                                        }
                                                      }
                                                    ]
                                                  }
                                                ]
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  ],
                                  "directives": []
                                }
                              },
                              {
                                "type": "ReturnStatement",
                                "start": 24872,
                                "end": 24907,
                                "loc": {
                                  "start": {
                                    "line": 670,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 670,
                                    "column": 41
                                  }
                                },
                                "argument": {
                                  "type": "CallExpression",
                                  "start": 24879,
                                  "end": 24906,
                                  "loc": {
                                    "start": {
                                      "line": 670,
                                      "column": 13
                                    },
                                    "end": {
                                      "line": 670,
                                      "column": 40
                                    }
                                  },
                                  "callee": {
                                    "type": "MemberExpression",
                                    "start": 24879,
                                    "end": 24896,
                                    "loc": {
                                      "start": {
                                        "line": 670,
                                        "column": 13
                                      },
                                      "end": {
                                        "line": 670,
                                        "column": 30
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 24879,
                                      "end": 24892,
                                      "loc": {
                                        "start": {
                                          "line": 670,
                                          "column": 13
                                        },
                                        "end": {
                                          "line": 670,
                                          "column": 26
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 24879,
                                        "end": 24884,
                                        "loc": {
                                          "start": {
                                            "line": 670,
                                            "column": 13
                                          },
                                          "end": {
                                            "line": 670,
                                            "column": 18
                                          },
                                          "identifierName": "Utils"
                                        },
                                        "name": "Utils"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 24885,
                                        "end": 24892,
                                        "loc": {
                                          "start": {
                                            "line": 670,
                                            "column": 19
                                          },
                                          "end": {
                                            "line": 670,
                                            "column": 26
                                          },
                                          "identifierName": "Promise"
                                        },
                                        "name": "Promise"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 24893,
                                      "end": 24896,
                                      "loc": {
                                        "start": {
                                          "line": 670,
                                          "column": 27
                                        },
                                        "end": {
                                          "line": 670,
                                          "column": 30
                                        },
                                        "identifierName": "all"
                                      },
                                      "name": "all"
                                    },
                                    "computed": false
                                  },
                                  "arguments": [
                                    {
                                      "type": "Identifier",
                                      "start": 24897,
                                      "end": 24905,
                                      "loc": {
                                        "start": {
                                          "line": 670,
                                          "column": 31
                                        },
                                        "end": {
                                          "line": 670,
                                          "column": 39
                                        },
                                        "identifierName": "promises"
                                      },
                                      "name": "promises"
                                    }
                                  ]
                                }
                              }
                            ],
                            "directives": []
                          }
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Associate one ore several rows with `this`.\n   *\n   * @param {Model[]|Model|string[]|string|number[]|Number} [newAssociation(s)] A single instance or primary key, or a mixed array of persisted instances or primary keys\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate` and `update`\n   * @param {Object} [options.validate] Run validation for the join model.\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
                  "start": 21299,
                  "end": 21805,
                  "loc": {
                    "start": {
                      "line": 590,
                      "column": 2
                    },
                    "end": {
                      "line": 598,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Un-associate one or more instance(s).\n   *\n   * @param {Model|String|Number} [oldAssociated] Can be an Instance or its primary key, or a mixed array of instances and primary keys\n   * @param {Object} [options] Options passed to `through.destroy`\n   * @return {Promise}\n   ",
                  "start": 24923,
                  "end": 25206,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 2
                    },
                    "end": {
                      "line": 680,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 25209,
              "end": 25744,
              "loc": {
                "start": {
                  "line": 681,
                  "column": 2
                },
                "end": {
                  "line": 693,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 25209,
                "end": 25215,
                "loc": {
                  "start": {
                    "line": 681,
                    "column": 2
                  },
                  "end": {
                    "line": 681,
                    "column": 8
                  },
                  "identifierName": "remove"
                },
                "name": "remove",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 25216,
                  "end": 25230,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 9
                    },
                    "end": {
                      "line": 681,
                      "column": 23
                    },
                    "identifierName": "sourceInstance"
                  },
                  "name": "sourceInstance"
                },
                {
                  "type": "Identifier",
                  "start": 25232,
                  "end": 25252,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 25
                    },
                    "end": {
                      "line": 681,
                      "column": 45
                    },
                    "identifierName": "oldAssociatedObjects"
                  },
                  "name": "oldAssociatedObjects"
                },
                {
                  "type": "Identifier",
                  "start": 25254,
                  "end": 25261,
                  "loc": {
                    "start": {
                      "line": 681,
                      "column": 47
                    },
                    "end": {
                      "line": 681,
                      "column": 54
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 25263,
                "end": 25744,
                "loc": {
                  "start": {
                    "line": 681,
                    "column": 56
                  },
                  "end": {
                    "line": 693,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 25269,
                    "end": 25294,
                    "loc": {
                      "start": {
                        "line": 682,
                        "column": 4
                      },
                      "end": {
                        "line": 682,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 25275,
                        "end": 25293,
                        "loc": {
                          "start": {
                            "line": 682,
                            "column": 10
                          },
                          "end": {
                            "line": 682,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 25275,
                          "end": 25286,
                          "loc": {
                            "start": {
                              "line": 682,
                              "column": 10
                            },
                            "end": {
                              "line": 682,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 25289,
                          "end": 25293,
                          "loc": {
                            "start": {
                              "line": 682,
                              "column": 24
                            },
                            "end": {
                              "line": 682,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 25300,
                    "end": 25324,
                    "loc": {
                      "start": {
                        "line": 684,
                        "column": 4
                      },
                      "end": {
                        "line": 684,
                        "column": 28
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 25300,
                      "end": 25323,
                      "loc": {
                        "start": {
                          "line": 684,
                          "column": 4
                        },
                        "end": {
                          "line": 684,
                          "column": 27
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 25300,
                        "end": 25307,
                        "loc": {
                          "start": {
                            "line": 684,
                            "column": 4
                          },
                          "end": {
                            "line": 684,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 25310,
                        "end": 25323,
                        "loc": {
                          "start": {
                            "line": 684,
                            "column": 14
                          },
                          "end": {
                            "line": 684,
                            "column": 27
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 25310,
                          "end": 25317,
                          "loc": {
                            "start": {
                              "line": 684,
                              "column": 14
                            },
                            "end": {
                              "line": 684,
                              "column": 21
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 25321,
                          "end": 25323,
                          "loc": {
                            "start": {
                              "line": 684,
                              "column": 25
                            },
                            "end": {
                              "line": 684,
                              "column": 27
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 25330,
                    "end": 25403,
                    "loc": {
                      "start": {
                        "line": 686,
                        "column": 4
                      },
                      "end": {
                        "line": 686,
                        "column": 77
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 25330,
                      "end": 25402,
                      "loc": {
                        "start": {
                          "line": 686,
                          "column": 4
                        },
                        "end": {
                          "line": 686,
                          "column": 76
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 25330,
                        "end": 25350,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 4
                          },
                          "end": {
                            "line": 686,
                            "column": 24
                          },
                          "identifierName": "oldAssociatedObjects"
                        },
                        "name": "oldAssociatedObjects"
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 25353,
                        "end": 25402,
                        "loc": {
                          "start": {
                            "line": 686,
                            "column": 27
                          },
                          "end": {
                            "line": 686,
                            "column": 76
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25353,
                          "end": 25380,
                          "loc": {
                            "start": {
                              "line": 686,
                              "column": 27
                            },
                            "end": {
                              "line": 686,
                              "column": 54
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25353,
                            "end": 25364,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 27
                              },
                              "end": {
                                "line": 686,
                                "column": 38
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25365,
                            "end": 25380,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 39
                              },
                              "end": {
                                "line": 686,
                                "column": 54
                              },
                              "identifierName": "toInstanceArray"
                            },
                            "name": "toInstanceArray"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "Identifier",
                            "start": 25381,
                            "end": 25401,
                            "loc": {
                              "start": {
                                "line": 686,
                                "column": 55
                              },
                              "end": {
                                "line": 686,
                                "column": 75
                              },
                              "identifierName": "oldAssociatedObjects"
                            },
                            "name": "oldAssociatedObjects"
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "VariableDeclaration",
                    "start": 25409,
                    "end": 25426,
                    "loc": {
                      "start": {
                        "line": 688,
                        "column": 4
                      },
                      "end": {
                        "line": 688,
                        "column": 21
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 25415,
                        "end": 25425,
                        "loc": {
                          "start": {
                            "line": 688,
                            "column": 10
                          },
                          "end": {
                            "line": 688,
                            "column": 20
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 25415,
                          "end": 25420,
                          "loc": {
                            "start": {
                              "line": 688,
                              "column": 10
                            },
                            "end": {
                              "line": 688,
                              "column": 15
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "init": {
                          "type": "ObjectExpression",
                          "start": 25423,
                          "end": 25425,
                          "loc": {
                            "start": {
                              "line": 688,
                              "column": 18
                            },
                            "end": {
                              "line": 688,
                              "column": 20
                            }
                          },
                          "properties": []
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 25431,
                    "end": 25522,
                    "loc": {
                      "start": {
                        "line": 689,
                        "column": 4
                      },
                      "end": {
                        "line": 689,
                        "column": 95
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 25431,
                      "end": 25521,
                      "loc": {
                        "start": {
                          "line": 689,
                          "column": 4
                        },
                        "end": {
                          "line": 689,
                          "column": 94
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 25431,
                        "end": 25460,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 4
                          },
                          "end": {
                            "line": 689,
                            "column": 33
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 25431,
                          "end": 25436,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 4
                            },
                            "end": {
                              "line": 689,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 25437,
                          "end": 25459,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 10
                            },
                            "end": {
                              "line": 689,
                              "column": 32
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25437,
                            "end": 25448,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 10
                              },
                              "end": {
                                "line": 689,
                                "column": 21
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25449,
                            "end": 25459,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 22
                              },
                              "end": {
                                "line": 689,
                                "column": 32
                              },
                              "identifierName": "identifier"
                            },
                            "name": "identifier"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 25463,
                        "end": 25521,
                        "loc": {
                          "start": {
                            "line": 689,
                            "column": 36
                          },
                          "end": {
                            "line": 689,
                            "column": 94
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25463,
                          "end": 25481,
                          "loc": {
                            "start": {
                              "line": 689,
                              "column": 36
                            },
                            "end": {
                              "line": 689,
                              "column": 54
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25463,
                            "end": 25477,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 36
                              },
                              "end": {
                                "line": 689,
                                "column": 50
                              },
                              "identifierName": "sourceInstance"
                            },
                            "name": "sourceInstance"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25478,
                            "end": 25481,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 51
                              },
                              "end": {
                                "line": 689,
                                "column": 54
                              },
                              "identifierName": "get"
                            },
                            "name": "get"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "MemberExpression",
                            "start": 25482,
                            "end": 25520,
                            "loc": {
                              "start": {
                                "line": 689,
                                "column": 55
                              },
                              "end": {
                                "line": 689,
                                "column": 93
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 25482,
                              "end": 25500,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 55
                                },
                                "end": {
                                  "line": 689,
                                  "column": 73
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 25482,
                                "end": 25493,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 55
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 66
                                  },
                                  "identifierName": "association"
                                },
                                "name": "association"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 25494,
                                "end": 25500,
                                "loc": {
                                  "start": {
                                    "line": 689,
                                    "column": 67
                                  },
                                  "end": {
                                    "line": 689,
                                    "column": 73
                                  },
                                  "identifierName": "source"
                                },
                                "name": "source"
                              },
                              "computed": false
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25501,
                              "end": 25520,
                              "loc": {
                                "start": {
                                  "line": 689,
                                  "column": 74
                                },
                                "end": {
                                  "line": 689,
                                  "column": 93
                                },
                                "identifierName": "primaryKeyAttribute"
                              },
                              "name": "primaryKeyAttribute"
                            },
                            "computed": false
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 25527,
                    "end": 25663,
                    "loc": {
                      "start": {
                        "line": 690,
                        "column": 4
                      },
                      "end": {
                        "line": 690,
                        "column": 140
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 25527,
                      "end": 25662,
                      "loc": {
                        "start": {
                          "line": 690,
                          "column": 4
                        },
                        "end": {
                          "line": 690,
                          "column": 139
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "MemberExpression",
                        "start": 25527,
                        "end": 25563,
                        "loc": {
                          "start": {
                            "line": 690,
                            "column": 4
                          },
                          "end": {
                            "line": 690,
                            "column": 40
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 25527,
                          "end": 25532,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 4
                            },
                            "end": {
                              "line": 690,
                              "column": 9
                            },
                            "identifierName": "where"
                          },
                          "name": "where"
                        },
                        "property": {
                          "type": "MemberExpression",
                          "start": 25533,
                          "end": 25562,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 10
                            },
                            "end": {
                              "line": 690,
                              "column": 39
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25533,
                            "end": 25544,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 10
                              },
                              "end": {
                                "line": 690,
                                "column": 21
                              },
                              "identifierName": "association"
                            },
                            "name": "association"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25545,
                            "end": 25562,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 22
                              },
                              "end": {
                                "line": 690,
                                "column": 39
                              },
                              "identifierName": "foreignIdentifier"
                            },
                            "name": "foreignIdentifier"
                          },
                          "computed": false
                        },
                        "computed": true
                      },
                      "right": {
                        "type": "CallExpression",
                        "start": 25566,
                        "end": 25662,
                        "loc": {
                          "start": {
                            "line": 690,
                            "column": 43
                          },
                          "end": {
                            "line": 690,
                            "column": 139
                          }
                        },
                        "callee": {
                          "type": "MemberExpression",
                          "start": 25566,
                          "end": 25590,
                          "loc": {
                            "start": {
                              "line": 690,
                              "column": 43
                            },
                            "end": {
                              "line": 690,
                              "column": 67
                            }
                          },
                          "object": {
                            "type": "Identifier",
                            "start": 25566,
                            "end": 25586,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 43
                              },
                              "end": {
                                "line": 690,
                                "column": 63
                              },
                              "identifierName": "oldAssociatedObjects"
                            },
                            "name": "oldAssociatedObjects"
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25587,
                            "end": 25590,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 64
                              },
                              "end": {
                                "line": 690,
                                "column": 67
                              },
                              "identifierName": "map"
                            },
                            "name": "map"
                          },
                          "computed": false
                        },
                        "arguments": [
                          {
                            "type": "ArrowFunctionExpression",
                            "start": 25591,
                            "end": 25661,
                            "loc": {
                              "start": {
                                "line": 690,
                                "column": 68
                              },
                              "end": {
                                "line": 690,
                                "column": 138
                              }
                            },
                            "id": null,
                            "generator": false,
                            "expression": true,
                            "async": false,
                            "params": [
                              {
                                "type": "Identifier",
                                "start": 25591,
                                "end": 25602,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 68
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 79
                                  },
                                  "identifierName": "newInstance"
                                },
                                "name": "newInstance"
                              }
                            ],
                            "body": {
                              "type": "CallExpression",
                              "start": 25606,
                              "end": 25661,
                              "loc": {
                                "start": {
                                  "line": 690,
                                  "column": 83
                                },
                                "end": {
                                  "line": 690,
                                  "column": 138
                                }
                              },
                              "callee": {
                                "type": "MemberExpression",
                                "start": 25606,
                                "end": 25621,
                                "loc": {
                                  "start": {
                                    "line": 690,
                                    "column": 83
                                  },
                                  "end": {
                                    "line": 690,
                                    "column": 98
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 25606,
                                  "end": 25617,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 83
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 94
                                    },
                                    "identifierName": "newInstance"
                                  },
                                  "name": "newInstance"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 25618,
                                  "end": 25621,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 95
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 98
                                    },
                                    "identifierName": "get"
                                  },
                                  "name": "get"
                                },
                                "computed": false
                              },
                              "arguments": [
                                {
                                  "type": "MemberExpression",
                                  "start": 25622,
                                  "end": 25660,
                                  "loc": {
                                    "start": {
                                      "line": 690,
                                      "column": 99
                                    },
                                    "end": {
                                      "line": 690,
                                      "column": 137
                                    }
                                  },
                                  "object": {
                                    "type": "MemberExpression",
                                    "start": 25622,
                                    "end": 25640,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 99
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 117
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 25622,
                                      "end": 25633,
                                      "loc": {
                                        "start": {
                                          "line": 690,
                                          "column": 99
                                        },
                                        "end": {
                                          "line": 690,
                                          "column": 110
                                        },
                                        "identifierName": "association"
                                      },
                                      "name": "association"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 25634,
                                      "end": 25640,
                                      "loc": {
                                        "start": {
                                          "line": 690,
                                          "column": 111
                                        },
                                        "end": {
                                          "line": 690,
                                          "column": 117
                                        },
                                        "identifierName": "target"
                                      },
                                      "name": "target"
                                    },
                                    "computed": false
                                  },
                                  "property": {
                                    "type": "Identifier",
                                    "start": 25641,
                                    "end": 25660,
                                    "loc": {
                                      "start": {
                                        "line": 690,
                                        "column": 118
                                      },
                                      "end": {
                                        "line": 690,
                                        "column": 137
                                      },
                                      "identifierName": "primaryKeyAttribute"
                                    },
                                    "name": "primaryKeyAttribute"
                                  },
                                  "computed": false
                                }
                              ]
                            }
                          }
                        ]
                      }
                    }
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 25669,
                    "end": 25740,
                    "loc": {
                      "start": {
                        "line": 692,
                        "column": 4
                      },
                      "end": {
                        "line": 692,
                        "column": 75
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 25676,
                      "end": 25739,
                      "loc": {
                        "start": {
                          "line": 692,
                          "column": 11
                        },
                        "end": {
                          "line": 692,
                          "column": 74
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 25676,
                        "end": 25709,
                        "loc": {
                          "start": {
                            "line": 692,
                            "column": 11
                          },
                          "end": {
                            "line": 692,
                            "column": 44
                          }
                        },
                        "object": {
                          "type": "MemberExpression",
                          "start": 25676,
                          "end": 25701,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 11
                            },
                            "end": {
                              "line": 692,
                              "column": 36
                            }
                          },
                          "object": {
                            "type": "MemberExpression",
                            "start": 25676,
                            "end": 25695,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 11
                              },
                              "end": {
                                "line": 692,
                                "column": 30
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 25676,
                              "end": 25687,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 11
                                },
                                "end": {
                                  "line": 692,
                                  "column": 22
                                },
                                "identifierName": "association"
                              },
                              "name": "association"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25688,
                              "end": 25695,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 23
                                },
                                "end": {
                                  "line": 692,
                                  "column": 30
                                },
                                "identifierName": "through"
                              },
                              "name": "through"
                            },
                            "computed": false
                          },
                          "property": {
                            "type": "Identifier",
                            "start": 25696,
                            "end": 25701,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 31
                              },
                              "end": {
                                "line": 692,
                                "column": 36
                              },
                              "identifierName": "model"
                            },
                            "name": "model"
                          },
                          "computed": false
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 25702,
                          "end": 25709,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 37
                            },
                            "end": {
                              "line": 692,
                              "column": 44
                            },
                            "identifierName": "destroy"
                          },
                          "name": "destroy"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "CallExpression",
                          "start": 25710,
                          "end": 25738,
                          "loc": {
                            "start": {
                              "line": 692,
                              "column": 45
                            },
                            "end": {
                              "line": 692,
                              "column": 73
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 25710,
                            "end": 25720,
                            "loc": {
                              "start": {
                                "line": 692,
                                "column": 45
                              },
                              "end": {
                                "line": 692,
                                "column": 55
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 25710,
                              "end": 25711,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 45
                                },
                                "end": {
                                  "line": 692,
                                  "column": 46
                                },
                                "identifierName": "_"
                              },
                              "name": "_"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 25712,
                              "end": 25720,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 47
                                },
                                "end": {
                                  "line": 692,
                                  "column": 55
                                },
                                "identifierName": "defaults"
                              },
                              "name": "defaults"
                            },
                            "computed": false
                          },
                          "arguments": [
                            {
                              "type": "ObjectExpression",
                              "start": 25721,
                              "end": 25728,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 56
                                },
                                "end": {
                                  "line": 692,
                                  "column": 63
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 25722,
                                  "end": 25727,
                                  "loc": {
                                    "start": {
                                      "line": 692,
                                      "column": 57
                                    },
                                    "end": {
                                      "line": 692,
                                      "column": 62
                                    }
                                  },
                                  "method": false,
                                  "shorthand": true,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 25722,
                                    "end": 25727,
                                    "loc": {
                                      "start": {
                                        "line": 692,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 692,
                                        "column": 62
                                      },
                                      "identifierName": "where"
                                    },
                                    "name": "where"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 25722,
                                    "end": 25727,
                                    "loc": {
                                      "start": {
                                        "line": 692,
                                        "column": 57
                                      },
                                      "end": {
                                        "line": 692,
                                        "column": 62
                                      },
                                      "identifierName": "where"
                                    },
                                    "name": "where"
                                  },
                                  "extra": {
                                    "shorthand": true
                                  }
                                }
                              ]
                            },
                            {
                              "type": "Identifier",
                              "start": 25730,
                              "end": 25737,
                              "loc": {
                                "start": {
                                  "line": 692,
                                  "column": 65
                                },
                                "end": {
                                  "line": 692,
                                  "column": 72
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ]
                        }
                      ]
                    }
                  }
                ],
                "directives": [],
                "trailingComments": null
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Un-associate one or more instance(s).\n   *\n   * @param {Model|String|Number} [oldAssociated] Can be an Instance or its primary key, or a mixed array of instances and primary keys\n   * @param {Object} [options] Options passed to `through.destroy`\n   * @return {Promise}\n   ",
                  "start": 24923,
                  "end": 25206,
                  "loc": {
                    "start": {
                      "line": 674,
                      "column": 2
                    },
                    "end": {
                      "line": 680,
                      "column": 5
                    }
                  }
                }
              ],
              "trailingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Create a new instance of the associated model and associate it with this.\n   *\n   * @param {Object} [values]\n   * @param {Object} [options] Options passed to create and add\n   * @param {Object} [options.through] Additional attributes for the join table\n   * @return {Promise}\n   ",
                  "start": 25748,
                  "end": 26038,
                  "loc": {
                    "start": {
                      "line": 695,
                      "column": 2
                    },
                    "end": {
                      "line": 702,
                      "column": 5
                    }
                  }
                }
              ]
            },
            {
              "type": "ClassMethod",
              "start": 26041,
              "end": 26717,
              "loc": {
                "start": {
                  "line": 703,
                  "column": 2
                },
                "end": {
                  "line": 726,
                  "column": 3
                }
              },
              "computed": false,
              "key": {
                "type": "Identifier",
                "start": 26041,
                "end": 26047,
                "loc": {
                  "start": {
                    "line": 703,
                    "column": 2
                  },
                  "end": {
                    "line": 703,
                    "column": 8
                  },
                  "identifierName": "create"
                },
                "name": "create",
                "leadingComments": null
              },
              "static": false,
              "kind": "method",
              "id": null,
              "generator": false,
              "expression": false,
              "async": false,
              "params": [
                {
                  "type": "Identifier",
                  "start": 26048,
                  "end": 26062,
                  "loc": {
                    "start": {
                      "line": 703,
                      "column": 9
                    },
                    "end": {
                      "line": 703,
                      "column": 23
                    },
                    "identifierName": "sourceInstance"
                  },
                  "name": "sourceInstance"
                },
                {
                  "type": "Identifier",
                  "start": 26064,
                  "end": 26070,
                  "loc": {
                    "start": {
                      "line": 703,
                      "column": 25
                    },
                    "end": {
                      "line": 703,
                      "column": 31
                    },
                    "identifierName": "values"
                  },
                  "name": "values"
                },
                {
                  "type": "Identifier",
                  "start": 26072,
                  "end": 26079,
                  "loc": {
                    "start": {
                      "line": 703,
                      "column": 33
                    },
                    "end": {
                      "line": 703,
                      "column": 40
                    },
                    "identifierName": "options"
                  },
                  "name": "options"
                }
              ],
              "body": {
                "type": "BlockStatement",
                "start": 26081,
                "end": 26717,
                "loc": {
                  "start": {
                    "line": 703,
                    "column": 42
                  },
                  "end": {
                    "line": 726,
                    "column": 3
                  }
                },
                "body": [
                  {
                    "type": "VariableDeclaration",
                    "start": 26087,
                    "end": 26112,
                    "loc": {
                      "start": {
                        "line": 704,
                        "column": 4
                      },
                      "end": {
                        "line": 704,
                        "column": 29
                      }
                    },
                    "declarations": [
                      {
                        "type": "VariableDeclarator",
                        "start": 26093,
                        "end": 26111,
                        "loc": {
                          "start": {
                            "line": 704,
                            "column": 10
                          },
                          "end": {
                            "line": 704,
                            "column": 28
                          }
                        },
                        "id": {
                          "type": "Identifier",
                          "start": 26093,
                          "end": 26104,
                          "loc": {
                            "start": {
                              "line": 704,
                              "column": 10
                            },
                            "end": {
                              "line": 704,
                              "column": 21
                            },
                            "identifierName": "association"
                          },
                          "name": "association"
                        },
                        "init": {
                          "type": "ThisExpression",
                          "start": 26107,
                          "end": 26111,
                          "loc": {
                            "start": {
                              "line": 704,
                              "column": 24
                            },
                            "end": {
                              "line": 704,
                              "column": 28
                            }
                          }
                        }
                      }
                    ],
                    "kind": "const"
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 26118,
                    "end": 26142,
                    "loc": {
                      "start": {
                        "line": 706,
                        "column": 4
                      },
                      "end": {
                        "line": 706,
                        "column": 28
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 26118,
                      "end": 26141,
                      "loc": {
                        "start": {
                          "line": 706,
                          "column": 4
                        },
                        "end": {
                          "line": 706,
                          "column": 27
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 26118,
                        "end": 26125,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 4
                          },
                          "end": {
                            "line": 706,
                            "column": 11
                          },
                          "identifierName": "options"
                        },
                        "name": "options"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 26128,
                        "end": 26141,
                        "loc": {
                          "start": {
                            "line": 706,
                            "column": 14
                          },
                          "end": {
                            "line": 706,
                            "column": 27
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 26128,
                          "end": 26135,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 14
                            },
                            "end": {
                              "line": 706,
                              "column": 21
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 26139,
                          "end": 26141,
                          "loc": {
                            "start": {
                              "line": 706,
                              "column": 25
                            },
                            "end": {
                              "line": 706,
                              "column": 27
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "ExpressionStatement",
                    "start": 26147,
                    "end": 26169,
                    "loc": {
                      "start": {
                        "line": 707,
                        "column": 4
                      },
                      "end": {
                        "line": 707,
                        "column": 26
                      }
                    },
                    "expression": {
                      "type": "AssignmentExpression",
                      "start": 26147,
                      "end": 26168,
                      "loc": {
                        "start": {
                          "line": 707,
                          "column": 4
                        },
                        "end": {
                          "line": 707,
                          "column": 25
                        }
                      },
                      "operator": "=",
                      "left": {
                        "type": "Identifier",
                        "start": 26147,
                        "end": 26153,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 4
                          },
                          "end": {
                            "line": 707,
                            "column": 10
                          },
                          "identifierName": "values"
                        },
                        "name": "values"
                      },
                      "right": {
                        "type": "LogicalExpression",
                        "start": 26156,
                        "end": 26168,
                        "loc": {
                          "start": {
                            "line": 707,
                            "column": 13
                          },
                          "end": {
                            "line": 707,
                            "column": 25
                          }
                        },
                        "left": {
                          "type": "Identifier",
                          "start": 26156,
                          "end": 26162,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 13
                            },
                            "end": {
                              "line": 707,
                              "column": 19
                            },
                            "identifierName": "values"
                          },
                          "name": "values"
                        },
                        "operator": "||",
                        "right": {
                          "type": "ObjectExpression",
                          "start": 26166,
                          "end": 26168,
                          "loc": {
                            "start": {
                              "line": 707,
                              "column": 23
                            },
                            "end": {
                              "line": 707,
                              "column": 25
                            }
                          },
                          "properties": []
                        }
                      }
                    }
                  },
                  {
                    "type": "IfStatement",
                    "start": 26175,
                    "end": 26261,
                    "loc": {
                      "start": {
                        "line": 709,
                        "column": 4
                      },
                      "end": {
                        "line": 713,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "CallExpression",
                      "start": 26179,
                      "end": 26201,
                      "loc": {
                        "start": {
                          "line": 709,
                          "column": 8
                        },
                        "end": {
                          "line": 709,
                          "column": 30
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 26179,
                        "end": 26192,
                        "loc": {
                          "start": {
                            "line": 709,
                            "column": 8
                          },
                          "end": {
                            "line": 709,
                            "column": 21
                          }
                        },
                        "object": {
                          "type": "Identifier",
                          "start": 26179,
                          "end": 26184,
                          "loc": {
                            "start": {
                              "line": 709,
                              "column": 8
                            },
                            "end": {
                              "line": 709,
                              "column": 13
                            },
                            "identifierName": "Array"
                          },
                          "name": "Array"
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 26185,
                          "end": 26192,
                          "loc": {
                            "start": {
                              "line": 709,
                              "column": 14
                            },
                            "end": {
                              "line": 709,
                              "column": 21
                            },
                            "identifierName": "isArray"
                          },
                          "name": "isArray"
                        },
                        "computed": false
                      },
                      "arguments": [
                        {
                          "type": "Identifier",
                          "start": 26193,
                          "end": 26200,
                          "loc": {
                            "start": {
                              "line": 709,
                              "column": 22
                            },
                            "end": {
                              "line": 709,
                              "column": 29
                            },
                            "identifierName": "options"
                          },
                          "name": "options"
                        }
                      ]
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 26203,
                      "end": 26261,
                      "loc": {
                        "start": {
                          "line": 709,
                          "column": 32
                        },
                        "end": {
                          "line": 713,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 26211,
                          "end": 26255,
                          "loc": {
                            "start": {
                              "line": 710,
                              "column": 6
                            },
                            "end": {
                              "line": 712,
                              "column": 8
                            }
                          },
                          "expression": {
                            "type": "AssignmentExpression",
                            "start": 26211,
                            "end": 26254,
                            "loc": {
                              "start": {
                                "line": 710,
                                "column": 6
                              },
                              "end": {
                                "line": 712,
                                "column": 7
                              }
                            },
                            "operator": "=",
                            "left": {
                              "type": "Identifier",
                              "start": 26211,
                              "end": 26218,
                              "loc": {
                                "start": {
                                  "line": 710,
                                  "column": 6
                                },
                                "end": {
                                  "line": 710,
                                  "column": 13
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "right": {
                              "type": "ObjectExpression",
                              "start": 26221,
                              "end": 26254,
                              "loc": {
                                "start": {
                                  "line": 710,
                                  "column": 16
                                },
                                "end": {
                                  "line": 712,
                                  "column": 7
                                }
                              },
                              "properties": [
                                {
                                  "type": "ObjectProperty",
                                  "start": 26231,
                                  "end": 26246,
                                  "loc": {
                                    "start": {
                                      "line": 711,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 711,
                                      "column": 23
                                    }
                                  },
                                  "method": false,
                                  "shorthand": false,
                                  "computed": false,
                                  "key": {
                                    "type": "Identifier",
                                    "start": 26231,
                                    "end": 26237,
                                    "loc": {
                                      "start": {
                                        "line": 711,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 711,
                                        "column": 14
                                      },
                                      "identifierName": "fields"
                                    },
                                    "name": "fields"
                                  },
                                  "value": {
                                    "type": "Identifier",
                                    "start": 26239,
                                    "end": 26246,
                                    "loc": {
                                      "start": {
                                        "line": 711,
                                        "column": 16
                                      },
                                      "end": {
                                        "line": 711,
                                        "column": 23
                                      },
                                      "identifierName": "options"
                                    },
                                    "name": "options"
                                  }
                                }
                              ]
                            }
                          }
                        }
                      ],
                      "directives": []
                    },
                    "alternate": null
                  },
                  {
                    "type": "IfStatement",
                    "start": 26267,
                    "end": 26456,
                    "loc": {
                      "start": {
                        "line": 715,
                        "column": 4
                      },
                      "end": {
                        "line": 720,
                        "column": 5
                      }
                    },
                    "test": {
                      "type": "MemberExpression",
                      "start": 26271,
                      "end": 26288,
                      "loc": {
                        "start": {
                          "line": 715,
                          "column": 8
                        },
                        "end": {
                          "line": 715,
                          "column": 25
                        }
                      },
                      "object": {
                        "type": "Identifier",
                        "start": 26271,
                        "end": 26282,
                        "loc": {
                          "start": {
                            "line": 715,
                            "column": 8
                          },
                          "end": {
                            "line": 715,
                            "column": 19
                          },
                          "identifierName": "association"
                        },
                        "name": "association"
                      },
                      "property": {
                        "type": "Identifier",
                        "start": 26283,
                        "end": 26288,
                        "loc": {
                          "start": {
                            "line": 715,
                            "column": 20
                          },
                          "end": {
                            "line": 715,
                            "column": 25
                          },
                          "identifierName": "scope"
                        },
                        "name": "scope"
                      },
                      "computed": false
                    },
                    "consequent": {
                      "type": "BlockStatement",
                      "start": 26290,
                      "end": 26456,
                      "loc": {
                        "start": {
                          "line": 715,
                          "column": 27
                        },
                        "end": {
                          "line": 720,
                          "column": 5
                        }
                      },
                      "body": [
                        {
                          "type": "ExpressionStatement",
                          "start": 26298,
                          "end": 26334,
                          "loc": {
                            "start": {
                              "line": 716,
                              "column": 6
                            },
                            "end": {
                              "line": 716,
                              "column": 42
                            }
                          },
                          "expression": {
                            "type": "CallExpression",
                            "start": 26298,
                            "end": 26333,
                            "loc": {
                              "start": {
                                "line": 716,
                                "column": 6
                              },
                              "end": {
                                "line": 716,
                                "column": 41
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 26298,
                              "end": 26306,
                              "loc": {
                                "start": {
                                  "line": 716,
                                  "column": 6
                                },
                                "end": {
                                  "line": 716,
                                  "column": 14
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26298,
                                "end": 26299,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 7
                                  },
                                  "identifierName": "_"
                                },
                                "name": "_"
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26300,
                                "end": 26306,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 14
                                  },
                                  "identifierName": "assign"
                                },
                                "name": "assign"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 26307,
                                "end": 26313,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 15
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 21
                                  },
                                  "identifierName": "values"
                                },
                                "name": "values"
                              },
                              {
                                "type": "MemberExpression",
                                "start": 26315,
                                "end": 26332,
                                "loc": {
                                  "start": {
                                    "line": 716,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 716,
                                    "column": 40
                                  }
                                },
                                "object": {
                                  "type": "Identifier",
                                  "start": 26315,
                                  "end": 26326,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 23
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 34
                                    },
                                    "identifierName": "association"
                                  },
                                  "name": "association"
                                },
                                "property": {
                                  "type": "Identifier",
                                  "start": 26327,
                                  "end": 26332,
                                  "loc": {
                                    "start": {
                                      "line": 716,
                                      "column": 35
                                    },
                                    "end": {
                                      "line": 716,
                                      "column": 40
                                    },
                                    "identifierName": "scope"
                                  },
                                  "name": "scope"
                                },
                                "computed": false
                              }
                            ]
                          }
                        },
                        {
                          "type": "IfStatement",
                          "start": 26341,
                          "end": 26450,
                          "loc": {
                            "start": {
                              "line": 717,
                              "column": 6
                            },
                            "end": {
                              "line": 719,
                              "column": 7
                            }
                          },
                          "test": {
                            "type": "MemberExpression",
                            "start": 26345,
                            "end": 26359,
                            "loc": {
                              "start": {
                                "line": 717,
                                "column": 10
                              },
                              "end": {
                                "line": 717,
                                "column": 24
                              }
                            },
                            "object": {
                              "type": "Identifier",
                              "start": 26345,
                              "end": 26352,
                              "loc": {
                                "start": {
                                  "line": 717,
                                  "column": 10
                                },
                                "end": {
                                  "line": 717,
                                  "column": 17
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26353,
                              "end": 26359,
                              "loc": {
                                "start": {
                                  "line": 717,
                                  "column": 18
                                },
                                "end": {
                                  "line": 717,
                                  "column": 24
                                },
                                "identifierName": "fields"
                              },
                              "name": "fields"
                            },
                            "computed": false
                          },
                          "consequent": {
                            "type": "BlockStatement",
                            "start": 26361,
                            "end": 26450,
                            "loc": {
                              "start": {
                                "line": 717,
                                "column": 26
                              },
                              "end": {
                                "line": 719,
                                "column": 7
                              }
                            },
                            "body": [
                              {
                                "type": "ExpressionStatement",
                                "start": 26371,
                                "end": 26442,
                                "loc": {
                                  "start": {
                                    "line": 718,
                                    "column": 8
                                  },
                                  "end": {
                                    "line": 718,
                                    "column": 79
                                  }
                                },
                                "expression": {
                                  "type": "AssignmentExpression",
                                  "start": 26371,
                                  "end": 26441,
                                  "loc": {
                                    "start": {
                                      "line": 718,
                                      "column": 8
                                    },
                                    "end": {
                                      "line": 718,
                                      "column": 78
                                    }
                                  },
                                  "operator": "=",
                                  "left": {
                                    "type": "MemberExpression",
                                    "start": 26371,
                                    "end": 26385,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 8
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 22
                                      }
                                    },
                                    "object": {
                                      "type": "Identifier",
                                      "start": 26371,
                                      "end": 26378,
                                      "loc": {
                                        "start": {
                                          "line": 718,
                                          "column": 8
                                        },
                                        "end": {
                                          "line": 718,
                                          "column": 15
                                        },
                                        "identifierName": "options"
                                      },
                                      "name": "options"
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26379,
                                      "end": 26385,
                                      "loc": {
                                        "start": {
                                          "line": 718,
                                          "column": 16
                                        },
                                        "end": {
                                          "line": 718,
                                          "column": 22
                                        },
                                        "identifierName": "fields"
                                      },
                                      "name": "fields"
                                    },
                                    "computed": false
                                  },
                                  "right": {
                                    "type": "CallExpression",
                                    "start": 26388,
                                    "end": 26441,
                                    "loc": {
                                      "start": {
                                        "line": 718,
                                        "column": 25
                                      },
                                      "end": {
                                        "line": 718,
                                        "column": 78
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26388,
                                      "end": 26409,
                                      "loc": {
                                        "start": {
                                          "line": 718,
                                          "column": 25
                                        },
                                        "end": {
                                          "line": 718,
                                          "column": 46
                                        }
                                      },
                                      "object": {
                                        "type": "MemberExpression",
                                        "start": 26388,
                                        "end": 26402,
                                        "loc": {
                                          "start": {
                                            "line": 718,
                                            "column": 25
                                          },
                                          "end": {
                                            "line": 718,
                                            "column": 39
                                          }
                                        },
                                        "object": {
                                          "type": "Identifier",
                                          "start": 26388,
                                          "end": 26395,
                                          "loc": {
                                            "start": {
                                              "line": 718,
                                              "column": 25
                                            },
                                            "end": {
                                              "line": 718,
                                              "column": 32
                                            },
                                            "identifierName": "options"
                                          },
                                          "name": "options"
                                        },
                                        "property": {
                                          "type": "Identifier",
                                          "start": 26396,
                                          "end": 26402,
                                          "loc": {
                                            "start": {
                                              "line": 718,
                                              "column": 33
                                            },
                                            "end": {
                                              "line": 718,
                                              "column": 39
                                            },
                                            "identifierName": "fields"
                                          },
                                          "name": "fields"
                                        },
                                        "computed": false
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26403,
                                        "end": 26409,
                                        "loc": {
                                          "start": {
                                            "line": 718,
                                            "column": 40
                                          },
                                          "end": {
                                            "line": 718,
                                            "column": 46
                                          },
                                          "identifierName": "concat"
                                        },
                                        "name": "concat"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "CallExpression",
                                        "start": 26410,
                                        "end": 26440,
                                        "loc": {
                                          "start": {
                                            "line": 718,
                                            "column": 47
                                          },
                                          "end": {
                                            "line": 718,
                                            "column": 77
                                          }
                                        },
                                        "callee": {
                                          "type": "MemberExpression",
                                          "start": 26410,
                                          "end": 26421,
                                          "loc": {
                                            "start": {
                                              "line": 718,
                                              "column": 47
                                            },
                                            "end": {
                                              "line": 718,
                                              "column": 58
                                            }
                                          },
                                          "object": {
                                            "type": "Identifier",
                                            "start": 26410,
                                            "end": 26416,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 47
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 53
                                              },
                                              "identifierName": "Object"
                                            },
                                            "name": "Object"
                                          },
                                          "property": {
                                            "type": "Identifier",
                                            "start": 26417,
                                            "end": 26421,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 54
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 58
                                              },
                                              "identifierName": "keys"
                                            },
                                            "name": "keys"
                                          },
                                          "computed": false
                                        },
                                        "arguments": [
                                          {
                                            "type": "MemberExpression",
                                            "start": 26422,
                                            "end": 26439,
                                            "loc": {
                                              "start": {
                                                "line": 718,
                                                "column": 59
                                              },
                                              "end": {
                                                "line": 718,
                                                "column": 76
                                              }
                                            },
                                            "object": {
                                              "type": "Identifier",
                                              "start": 26422,
                                              "end": 26433,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 59
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 70
                                                },
                                                "identifierName": "association"
                                              },
                                              "name": "association"
                                            },
                                            "property": {
                                              "type": "Identifier",
                                              "start": 26434,
                                              "end": 26439,
                                              "loc": {
                                                "start": {
                                                  "line": 718,
                                                  "column": 71
                                                },
                                                "end": {
                                                  "line": 718,
                                                  "column": 76
                                                },
                                                "identifierName": "scope"
                                              },
                                              "name": "scope"
                                            },
                                            "computed": false
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "directives": []
                          },
                          "alternate": null
                        }
                      ],
                      "directives": [],
                      "trailingComments": null
                    },
                    "alternate": null,
                    "trailingComments": [
                      {
                        "type": "CommentLine",
                        "value": " Create the related model instance",
                        "start": 26462,
                        "end": 26498,
                        "loc": {
                          "start": {
                            "line": 722,
                            "column": 4
                          },
                          "end": {
                            "line": 722,
                            "column": 40
                          }
                        }
                      }
                    ]
                  },
                  {
                    "type": "ReturnStatement",
                    "start": 26503,
                    "end": 26713,
                    "loc": {
                      "start": {
                        "line": 723,
                        "column": 4
                      },
                      "end": {
                        "line": 725,
                        "column": 6
                      }
                    },
                    "argument": {
                      "type": "CallExpression",
                      "start": 26510,
                      "end": 26712,
                      "loc": {
                        "start": {
                          "line": 723,
                          "column": 11
                        },
                        "end": {
                          "line": 725,
                          "column": 5
                        }
                      },
                      "callee": {
                        "type": "MemberExpression",
                        "start": 26510,
                        "end": 26557,
                        "loc": {
                          "start": {
                            "line": 723,
                            "column": 11
                          },
                          "end": {
                            "line": 723,
                            "column": 58
                          }
                        },
                        "object": {
                          "type": "CallExpression",
                          "start": 26510,
                          "end": 26552,
                          "loc": {
                            "start": {
                              "line": 723,
                              "column": 11
                            },
                            "end": {
                              "line": 723,
                              "column": 53
                            }
                          },
                          "callee": {
                            "type": "MemberExpression",
                            "start": 26510,
                            "end": 26535,
                            "loc": {
                              "start": {
                                "line": 723,
                                "column": 11
                              },
                              "end": {
                                "line": 723,
                                "column": 36
                              }
                            },
                            "object": {
                              "type": "MemberExpression",
                              "start": 26510,
                              "end": 26528,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 11
                                },
                                "end": {
                                  "line": 723,
                                  "column": 29
                                }
                              },
                              "object": {
                                "type": "Identifier",
                                "start": 26510,
                                "end": 26521,
                                "loc": {
                                  "start": {
                                    "line": 723,
                                    "column": 11
                                  },
                                  "end": {
                                    "line": 723,
                                    "column": 22
                                  },
                                  "identifierName": "association"
                                },
                                "name": "association",
                                "leadingComments": null
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26522,
                                "end": 26528,
                                "loc": {
                                  "start": {
                                    "line": 723,
                                    "column": 23
                                  },
                                  "end": {
                                    "line": 723,
                                    "column": 29
                                  },
                                  "identifierName": "target"
                                },
                                "name": "target"
                              },
                              "computed": false,
                              "leadingComments": null
                            },
                            "property": {
                              "type": "Identifier",
                              "start": 26529,
                              "end": 26535,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 30
                                },
                                "end": {
                                  "line": 723,
                                  "column": 36
                                },
                                "identifierName": "create"
                              },
                              "name": "create"
                            },
                            "computed": false,
                            "leadingComments": null
                          },
                          "arguments": [
                            {
                              "type": "Identifier",
                              "start": 26536,
                              "end": 26542,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 37
                                },
                                "end": {
                                  "line": 723,
                                  "column": 43
                                },
                                "identifierName": "values"
                              },
                              "name": "values"
                            },
                            {
                              "type": "Identifier",
                              "start": 26544,
                              "end": 26551,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 45
                                },
                                "end": {
                                  "line": 723,
                                  "column": 52
                                },
                                "identifierName": "options"
                              },
                              "name": "options"
                            }
                          ],
                          "leadingComments": null
                        },
                        "property": {
                          "type": "Identifier",
                          "start": 26553,
                          "end": 26557,
                          "loc": {
                            "start": {
                              "line": 723,
                              "column": 54
                            },
                            "end": {
                              "line": 723,
                              "column": 58
                            },
                            "identifierName": "then"
                          },
                          "name": "then"
                        },
                        "computed": false,
                        "leadingComments": null
                      },
                      "arguments": [
                        {
                          "type": "ArrowFunctionExpression",
                          "start": 26558,
                          "end": 26706,
                          "loc": {
                            "start": {
                              "line": 723,
                              "column": 59
                            },
                            "end": {
                              "line": 724,
                              "column": 125
                            }
                          },
                          "id": null,
                          "generator": false,
                          "expression": true,
                          "async": false,
                          "params": [
                            {
                              "type": "Identifier",
                              "start": 26558,
                              "end": 26577,
                              "loc": {
                                "start": {
                                  "line": 723,
                                  "column": 59
                                },
                                "end": {
                                  "line": 723,
                                  "column": 78
                                },
                                "identifierName": "newAssociatedObject"
                              },
                              "name": "newAssociatedObject"
                            }
                          ],
                          "body": {
                            "type": "CallExpression",
                            "start": 26587,
                            "end": 26706,
                            "loc": {
                              "start": {
                                "line": 724,
                                "column": 6
                              },
                              "end": {
                                "line": 724,
                                "column": 125
                              }
                            },
                            "callee": {
                              "type": "MemberExpression",
                              "start": 26587,
                              "end": 26685,
                              "loc": {
                                "start": {
                                  "line": 724,
                                  "column": 6
                                },
                                "end": {
                                  "line": 724,
                                  "column": 104
                                }
                              },
                              "object": {
                                "type": "CallExpression",
                                "start": 26587,
                                "end": 26678,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 6
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 97
                                  }
                                },
                                "callee": {
                                  "type": "MemberExpression",
                                  "start": 26587,
                                  "end": 26628,
                                  "loc": {
                                    "start": {
                                      "line": 724,
                                      "column": 6
                                    },
                                    "end": {
                                      "line": 724,
                                      "column": 47
                                    }
                                  },
                                  "object": {
                                    "type": "Identifier",
                                    "start": 26587,
                                    "end": 26601,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 6
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 20
                                      },
                                      "identifierName": "sourceInstance"
                                    },
                                    "name": "sourceInstance"
                                  },
                                  "property": {
                                    "type": "MemberExpression",
                                    "start": 26602,
                                    "end": 26627,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 21
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 46
                                      }
                                    },
                                    "object": {
                                      "type": "MemberExpression",
                                      "start": 26602,
                                      "end": 26623,
                                      "loc": {
                                        "start": {
                                          "line": 724,
                                          "column": 21
                                        },
                                        "end": {
                                          "line": 724,
                                          "column": 42
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26602,
                                        "end": 26613,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 21
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 32
                                          },
                                          "identifierName": "association"
                                        },
                                        "name": "association"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26614,
                                        "end": 26623,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 33
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 42
                                          },
                                          "identifierName": "accessors"
                                        },
                                        "name": "accessors"
                                      },
                                      "computed": false
                                    },
                                    "property": {
                                      "type": "Identifier",
                                      "start": 26624,
                                      "end": 26627,
                                      "loc": {
                                        "start": {
                                          "line": 724,
                                          "column": 43
                                        },
                                        "end": {
                                          "line": 724,
                                          "column": 46
                                        },
                                        "identifierName": "add"
                                      },
                                      "name": "add"
                                    },
                                    "computed": false
                                  },
                                  "computed": true
                                },
                                "arguments": [
                                  {
                                    "type": "Identifier",
                                    "start": 26629,
                                    "end": 26648,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 48
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 67
                                      },
                                      "identifierName": "newAssociatedObject"
                                    },
                                    "name": "newAssociatedObject"
                                  },
                                  {
                                    "type": "CallExpression",
                                    "start": 26650,
                                    "end": 26677,
                                    "loc": {
                                      "start": {
                                        "line": 724,
                                        "column": 69
                                      },
                                      "end": {
                                        "line": 724,
                                        "column": 96
                                      }
                                    },
                                    "callee": {
                                      "type": "MemberExpression",
                                      "start": 26650,
                                      "end": 26656,
                                      "loc": {
                                        "start": {
                                          "line": 724,
                                          "column": 69
                                        },
                                        "end": {
                                          "line": 724,
                                          "column": 75
                                        }
                                      },
                                      "object": {
                                        "type": "Identifier",
                                        "start": 26650,
                                        "end": 26651,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 69
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 70
                                          },
                                          "identifierName": "_"
                                        },
                                        "name": "_"
                                      },
                                      "property": {
                                        "type": "Identifier",
                                        "start": 26652,
                                        "end": 26656,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 71
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 75
                                          },
                                          "identifierName": "omit"
                                        },
                                        "name": "omit"
                                      },
                                      "computed": false
                                    },
                                    "arguments": [
                                      {
                                        "type": "Identifier",
                                        "start": 26657,
                                        "end": 26664,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 76
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 83
                                          },
                                          "identifierName": "options"
                                        },
                                        "name": "options"
                                      },
                                      {
                                        "type": "ArrayExpression",
                                        "start": 26666,
                                        "end": 26676,
                                        "loc": {
                                          "start": {
                                            "line": 724,
                                            "column": 85
                                          },
                                          "end": {
                                            "line": 724,
                                            "column": 95
                                          }
                                        },
                                        "elements": [
                                          {
                                            "type": "StringLiteral",
                                            "start": 26667,
                                            "end": 26675,
                                            "loc": {
                                              "start": {
                                                "line": 724,
                                                "column": 86
                                              },
                                              "end": {
                                                "line": 724,
                                                "column": 94
                                              }
                                            },
                                            "extra": {
                                              "rawValue": "fields",
                                              "raw": "'fields'"
                                            },
                                            "value": "fields"
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                ]
                              },
                              "property": {
                                "type": "Identifier",
                                "start": 26679,
                                "end": 26685,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 98
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 104
                                  },
                                  "identifierName": "return"
                                },
                                "name": "return"
                              },
                              "computed": false
                            },
                            "arguments": [
                              {
                                "type": "Identifier",
                                "start": 26686,
                                "end": 26705,
                                "loc": {
                                  "start": {
                                    "line": 724,
                                    "column": 105
                                  },
                                  "end": {
                                    "line": 724,
                                    "column": 124
                                  },
                                  "identifierName": "newAssociatedObject"
                                },
                                "name": "newAssociatedObject"
                              }
                            ]
                          }
                        }
                      ],
                      "leadingComments": null
                    },
                    "leadingComments": [
                      {
                        "type": "CommentLine",
                        "value": " Create the related model instance",
                        "start": 26462,
                        "end": 26498,
                        "loc": {
                          "start": {
                            "line": 722,
                            "column": 4
                          },
                          "end": {
                            "line": 722,
                            "column": 40
                          }
                        }
                      }
                    ]
                  }
                ],
                "directives": []
              },
              "leadingComments": [
                {
                  "type": "CommentBlock",
                  "value": "*\n   * Create a new instance of the associated model and associate it with this.\n   *\n   * @param {Object} [values]\n   * @param {Object} [options] Options passed to create and add\n   * @param {Object} [options.through] Additional attributes for the join table\n   * @return {Promise}\n   ",
                  "start": 25748,
                  "end": 26038,
                  "loc": {
                    "start": {
                      "line": 695,
                      "column": 2
                    },
                    "end": {
                      "line": 702,
                      "column": 5
                    }
                  }
                }
              ]
            }
          ]
        },
        "leadingComments": [
          {
            "type": "CommentBlock",
            "value": "*\n * Many-to-many association with a join table.\n *\n * When the join table has additional attributes, these can be passed in the options object:\n *\n * ```js\n * UserProject = sequelize.define('user_project', {\n *   role: Sequelize.STRING\n * });\n * User.belongsToMany(Project, { through: UserProject });\n * Project.belongsToMany(User, { through: UserProject });\n * // through is required!\n *\n * user.addProject(project, { through: { role: 'manager' }});\n * ```\n *\n * All methods allow you to pass either a persisted instance, its primary key, or a mixture:\n *\n * ```js\n * Project.create({ id: 11 }).then(function (project) {\n *   user.addProjects([project, 12]);\n * });\n * ```\n *\n * If you want to set several target instances, but with different attributes you have to set the attributes on the instance, using a property with the name of the through model:\n *\n * ```js\n * p1.UserProjects = {\n *   started: true\n * }\n * user.setProjects([p1, p2], { through: { started: false }}) // The default value is false, but p1 overrides that.\n * ```\n *\n * Similarly, when fetching through a join table with custom attributes, these attributes will be available as an object with the name of the through model.\n * ```js\n * user.getProjects().then(function (projects) {\n   *   let p1 = projects[0]\n   *   p1.UserProjects.started // Is this project started yet?\n   * })\n * ```\n *\n * In the API reference below, add the name of the association to the method, e.g. for `User.belongsToMany(Project)` the getter will be `user.getProjects()`.\n *\n * @see {@link Model.belongsToMany}\n ",
            "start": 342,
            "end": 1910,
            "loc": {
              "start": {
                "line": 12,
                "column": 0
              },
              "end": {
                "line": 56,
                "column": 3
              }
            }
          }
        ]
      },
      {
        "type": "ExpressionStatement",
        "start": 26721,
        "end": 26752,
        "loc": {
          "start": {
            "line": 729,
            "column": 0
          },
          "end": {
            "line": 729,
            "column": 31
          }
        },
        "expression": {
          "type": "AssignmentExpression",
          "start": 26721,
          "end": 26751,
          "loc": {
            "start": {
              "line": 729,
              "column": 0
            },
            "end": {
              "line": 729,
              "column": 30
            }
          },
          "operator": "=",
          "left": {
            "type": "MemberExpression",
            "start": 26721,
            "end": 26735,
            "loc": {
              "start": {
                "line": 729,
                "column": 0
              },
              "end": {
                "line": 729,
                "column": 14
              }
            },
            "object": {
              "type": "Identifier",
              "start": 26721,
              "end": 26727,
              "loc": {
                "start": {
                  "line": 729,
                  "column": 0
                },
                "end": {
                  "line": 729,
                  "column": 6
                },
                "identifierName": "module"
              },
              "name": "module"
            },
            "property": {
              "type": "Identifier",
              "start": 26728,
              "end": 26735,
              "loc": {
                "start": {
                  "line": 729,
                  "column": 7
                },
                "end": {
                  "line": 729,
                  "column": 14
                },
                "identifierName": "exports"
              },
              "name": "exports"
            },
            "computed": false
          },
          "right": {
            "type": "Identifier",
            "start": 26738,
            "end": 26751,
            "loc": {
              "start": {
                "line": 729,
                "column": 17
              },
              "end": {
                "line": 729,
                "column": 30
              },
              "identifierName": "BelongsToMany"
            },
            "name": "BelongsToMany"
          }
        }
      },
      {
        "type": "ExpressionStatement",
        "start": 26753,
        "end": 26798,
        "loc": {
          "start": {
            "line": 730,
            "column": 0
          },
          "end": {
            "line": 730,
            "column": 45
          }
        },
        "expression": {
          "type": "AssignmentExpression",
          "start": 26753,
          "end": 26797,
          "loc": {
            "start": {
              "line": 730,
              "column": 0
            },
            "end": {
              "line": 730,
              "column": 44
            }
          },
          "operator": "=",
          "left": {
            "type": "MemberExpression",
            "start": 26753,
            "end": 26781,
            "loc": {
              "start": {
                "line": 730,
                "column": 0
              },
              "end": {
                "line": 730,
                "column": 28
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 26753,
              "end": 26767,
              "loc": {
                "start": {
                  "line": 730,
                  "column": 0
                },
                "end": {
                  "line": 730,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 26753,
                "end": 26759,
                "loc": {
                  "start": {
                    "line": 730,
                    "column": 0
                  },
                  "end": {
                    "line": 730,
                    "column": 6
                  },
                  "identifierName": "module"
                },
                "name": "module"
              },
              "property": {
                "type": "Identifier",
                "start": 26760,
                "end": 26767,
                "loc": {
                  "start": {
                    "line": 730,
                    "column": 7
                  },
                  "end": {
                    "line": 730,
                    "column": 14
                  },
                  "identifierName": "exports"
                },
                "name": "exports"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 26768,
              "end": 26781,
              "loc": {
                "start": {
                  "line": 730,
                  "column": 15
                },
                "end": {
                  "line": 730,
                  "column": 28
                },
                "identifierName": "BelongsToMany"
              },
              "name": "BelongsToMany"
            },
            "computed": false
          },
          "right": {
            "type": "Identifier",
            "start": 26784,
            "end": 26797,
            "loc": {
              "start": {
                "line": 730,
                "column": 31
              },
              "end": {
                "line": 730,
                "column": 44
              },
              "identifierName": "BelongsToMany"
            },
            "name": "BelongsToMany"
          }
        }
      },
      {
        "type": "ExpressionStatement",
        "start": 26799,
        "end": 26838,
        "loc": {
          "start": {
            "line": 731,
            "column": 0
          },
          "end": {
            "line": 731,
            "column": 39
          }
        },
        "expression": {
          "type": "AssignmentExpression",
          "start": 26799,
          "end": 26837,
          "loc": {
            "start": {
              "line": 731,
              "column": 0
            },
            "end": {
              "line": 731,
              "column": 38
            }
          },
          "operator": "=",
          "left": {
            "type": "MemberExpression",
            "start": 26799,
            "end": 26821,
            "loc": {
              "start": {
                "line": 731,
                "column": 0
              },
              "end": {
                "line": 731,
                "column": 22
              }
            },
            "object": {
              "type": "MemberExpression",
              "start": 26799,
              "end": 26813,
              "loc": {
                "start": {
                  "line": 731,
                  "column": 0
                },
                "end": {
                  "line": 731,
                  "column": 14
                }
              },
              "object": {
                "type": "Identifier",
                "start": 26799,
                "end": 26805,
                "loc": {
                  "start": {
                    "line": 731,
                    "column": 0
                  },
                  "end": {
                    "line": 731,
                    "column": 6
                  },
                  "identifierName": "module"
                },
                "name": "module"
              },
              "property": {
                "type": "Identifier",
                "start": 26806,
                "end": 26813,
                "loc": {
                  "start": {
                    "line": 731,
                    "column": 7
                  },
                  "end": {
                    "line": 731,
                    "column": 14
                  },
                  "identifierName": "exports"
                },
                "name": "exports"
              },
              "computed": false
            },
            "property": {
              "type": "Identifier",
              "start": 26814,
              "end": 26821,
              "loc": {
                "start": {
                  "line": 731,
                  "column": 15
                },
                "end": {
                  "line": 731,
                  "column": 22
                },
                "identifierName": "default"
              },
              "name": "default"
            },
            "computed": false
          },
          "right": {
            "type": "Identifier",
            "start": 26824,
            "end": 26837,
            "loc": {
              "start": {
                "line": 731,
                "column": 25
              },
              "end": {
                "line": 731,
                "column": 38
              },
              "identifierName": "BelongsToMany"
            },
            "name": "BelongsToMany"
          }
        }
      }
    ],
    "directives": [
      {
        "type": "Directive",
        "start": 0,
        "end": 13,
        "loc": {
          "start": {
            "line": 1,
            "column": 0
          },
          "end": {
            "line": 1,
            "column": 13
          }
        },
        "value": {
          "type": "DirectiveLiteral",
          "start": 0,
          "end": 12,
          "loc": {
            "start": {
              "line": 1,
              "column": 0
            },
            "end": {
              "line": 1,
              "column": 12
            }
          },
          "value": "use strict",
          "extra": {
            "raw": "'use strict'",
            "rawValue": "use strict"
          }
        }
      }
    ]
  },
  "comments": [
    {
      "type": "CommentBlock",
      "value": "*\n * Many-to-many association with a join table.\n *\n * When the join table has additional attributes, these can be passed in the options object:\n *\n * ```js\n * UserProject = sequelize.define('user_project', {\n *   role: Sequelize.STRING\n * });\n * User.belongsToMany(Project, { through: UserProject });\n * Project.belongsToMany(User, { through: UserProject });\n * // through is required!\n *\n * user.addProject(project, { through: { role: 'manager' }});\n * ```\n *\n * All methods allow you to pass either a persisted instance, its primary key, or a mixture:\n *\n * ```js\n * Project.create({ id: 11 }).then(function (project) {\n *   user.addProjects([project, 12]);\n * });\n * ```\n *\n * If you want to set several target instances, but with different attributes you have to set the attributes on the instance, using a property with the name of the through model:\n *\n * ```js\n * p1.UserProjects = {\n *   started: true\n * }\n * user.setProjects([p1, p2], { through: { started: false }}) // The default value is false, but p1 overrides that.\n * ```\n *\n * Similarly, when fetching through a join table with custom attributes, these attributes will be available as an object with the name of the through model.\n * ```js\n * user.getProjects().then(function (projects) {\n   *   let p1 = projects[0]\n   *   p1.UserProjects.started // Is this project started yet?\n   * })\n * ```\n *\n * In the API reference below, add the name of the association to the method, e.g. for `User.belongsToMany(Project)` the getter will be `user.getProjects()`.\n *\n * @see {@link Model.belongsToMany}\n ",
      "start": 342,
      "end": 1910,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 56,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * If self association, this is the target association - Unless we find a pairing association\n    ",
      "start": 3374,
      "end": 3480,
      "loc": {
        "start": {
          "line": 104,
          "column": 4
        },
        "end": {
          "line": 106,
          "column": 6
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * Default/generated foreign/other keys\n    ",
      "start": 3563,
      "end": 3615,
      "loc": {
        "start": {
          "line": 111,
          "column": 4
        },
        "end": {
          "line": 113,
          "column": 6
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * Find paired association (if exists)\n    ",
      "start": 4980,
      "end": 5031,
      "loc": {
        "start": {
          "line": 155,
          "column": 4
        },
        "end": {
          "line": 157,
          "column": 6
        }
      }
    },
    {
      "type": "CommentLine",
      "value": "we don't want indexes here (as referenced in #2416)",
      "start": 5646,
      "end": 5699,
      "loc": {
        "start": {
          "line": 172,
          "column": 23
        },
        "end": {
          "line": 172,
          "column": 76
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " A paranoid join table does not make sense",
      "start": 5728,
      "end": 5772,
      "loc": {
        "start": {
          "line": 173,
          "column": 28
        },
        "end": {
          "line": 173,
          "column": 72
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Don't propagate model-level validations",
      "start": 5796,
      "end": 5838,
      "loc": {
        "start": {
          "line": 174,
          "column": 23
        },
        "end": {
          "line": 174,
          "column": 65
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " If paired otherKey was inferred we should make sure to clean it up before adding a new one that matches the foreignKey",
      "start": 6279,
      "end": 6400,
      "loc": {
        "start": {
          "line": 190,
          "column": 8
        },
        "end": {
          "line": 190,
          "column": 129
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Get singular and plural names, trying to uppercase the first letter, unless the model forbids it",
      "start": 6988,
      "end": 7087,
      "loc": {
        "start": {
          "line": 208,
          "column": 4
        },
        "end": {
          "line": 208,
          "column": 103
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " the id is in the target table",
      "start": 7588,
      "end": 7620,
      "loc": {
        "start": {
          "line": 226,
          "column": 2
        },
        "end": {
          "line": 226,
          "column": 34
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " or in an extra table which connects two tables",
      "start": 7623,
      "end": 7672,
      "loc": {
        "start": {
          "line": 227,
          "column": 2
        },
        "end": {
          "line": 227,
          "column": 51
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove any PKs previously defined by sequelize",
      "start": 7785,
      "end": 7834,
      "loc": {
        "start": {
          "line": 233,
          "column": 4
        },
        "end": {
          "line": 233,
          "column": 53
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " but ignore any keys that are part of this association (#5865)",
      "start": 7839,
      "end": 7903,
      "loc": {
        "start": {
          "line": 234,
          "column": 4
        },
        "end": {
          "line": 234,
          "column": 68
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " this key is still needed as it's part of the association",
      "start": 8155,
      "end": 8214,
      "loc": {
        "start": {
          "line": 238,
          "column": 10
        },
        "end": {
          "line": 238,
          "column": 69
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " so just set primaryKey to false",
      "start": 8225,
      "end": 8259,
      "loc": {
        "start": {
          "line": 239,
          "column": 10
        },
        "end": {
          "line": 239,
          "column": 44
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " For the source attribute the passed option is the priority",
      "start": 9896,
      "end": 9957,
      "loc": {
        "start": {
          "line": 282,
          "column": 6
        },
        "end": {
          "line": 282,
          "column": 67
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " But the for target attribute the previously defined option is the priority (since it could've been set by another belongsToMany call)",
      "start": 10471,
      "end": 10607,
      "loc": {
        "start": {
          "line": 293,
          "column": 6
        },
        "end": {
          "line": 293,
          "column": 142
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Get everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @param {String} [options.schema] Apply a schema on the related model\n   * @see {@link Model.findAll}  for a full explanation of options\n   * @return {Promise<Array<Model>>}\n   ",
      "start": 13254,
      "end": 13780,
      "loc": {
        "start": {
          "line": 363,
          "column": 2
        },
        "end": {
          "line": 372,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": "If a user pass a where on the options through options, make an \"and\" with the current throughWhere",
      "start": 14411,
      "end": 14511,
      "loc": {
        "start": {
          "line": 400,
          "column": 6
        },
        "end": {
          "line": 400,
          "column": 106
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Count everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @return {Promise<Integer>}\n   ",
      "start": 15284,
      "end": 15666,
      "loc": {
        "start": {
          "line": 432,
          "column": 2
        },
        "end": {
          "line": 439,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Check if one or more instance(s) are associated with this. If a list of instances is passed, the function returns true if _all_ instances are associated\n   *\n   * @param {Model[]|Model|string[]|String|number[]|Number} [instance(s)] Can be an array of instances or their primary keys\n   * @param {Object} [options] Options passed to getAssociations\n   * @return {Promise<boolean>}\n   ",
      "start": 16182,
      "end": 16576,
      "loc": {
        "start": {
          "line": 456,
          "column": 2
        },
        "end": {
          "line": 462,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Set the associated models by passing an array of instances or their primary keys. Everything that it not in the passed array will be un-associated.\n   *\n   * @param {Array<Model|String|Number>} [newAssociations] An array of persisted instances or primary key of instances to associate with this. Pass `null` or `undefined` to remove all associations.\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate`, `update` and `destroy`\n   * @param {Object} [options.validate] Run validation for the join model\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
      "start": 17333,
      "end": 17981,
      "loc": {
        "start": {
          "line": 497,
          "column": 2
        },
        "end": {
          "line": 505,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Don't try to insert the transaction as an attribute in the through table",
      "start": 18864,
      "end": 18939,
      "loc": {
        "start": {
          "line": 530,
          "column": 6
        },
        "end": {
          "line": 530,
          "column": 81
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
      "start": 19602,
      "end": 19729,
      "loc": {
        "start": {
          "line": 544,
          "column": 10
        },
        "end": {
          "line": 544,
          "column": 137
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Associate one ore several rows with `this`.\n   *\n   * @param {Model[]|Model|string[]|string|number[]|Number} [newAssociation(s)] A single instance or primary key, or a mixed array of persisted instances or primary keys\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate` and `update`\n   * @param {Object} [options.validate] Run validation for the join model.\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
      "start": 21299,
      "end": 21805,
      "loc": {
        "start": {
          "line": 590,
          "column": 2
        },
        "end": {
          "line": 598,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " If newInstances is null or undefined, no-op",
      "start": 21857,
      "end": 21903,
      "loc": {
        "start": {
          "line": 600,
          "column": 4
        },
        "end": {
          "line": 600,
          "column": 50
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
      "start": 24400,
      "end": 24527,
      "loc": {
        "start": {
          "line": 659,
          "column": 8
        },
        "end": {
          "line": 659,
          "column": 135
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Un-associate one or more instance(s).\n   *\n   * @param {Model|String|Number} [oldAssociated] Can be an Instance or its primary key, or a mixed array of instances and primary keys\n   * @param {Object} [options] Options passed to `through.destroy`\n   * @return {Promise}\n   ",
      "start": 24923,
      "end": 25206,
      "loc": {
        "start": {
          "line": 674,
          "column": 2
        },
        "end": {
          "line": 680,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Create a new instance of the associated model and associate it with this.\n   *\n   * @param {Object} [values]\n   * @param {Object} [options] Options passed to create and add\n   * @param {Object} [options.through] Additional attributes for the join table\n   * @return {Promise}\n   ",
      "start": 25748,
      "end": 26038,
      "loc": {
        "start": {
          "line": 695,
          "column": 2
        },
        "end": {
          "line": 702,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Create the related model instance",
      "start": 26462,
      "end": 26498,
      "loc": {
        "start": {
          "line": 722,
          "column": 4
        },
        "end": {
          "line": 722,
          "column": 40
        }
      }
    }
  ],
  "tokens": [
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "use strict",
      "start": 0,
      "end": 12,
      "loc": {
        "start": {
          "line": 1,
          "column": 0
        },
        "end": {
          "line": 1,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12,
      "end": 13,
      "loc": {
        "start": {
          "line": 1,
          "column": 12
        },
        "end": {
          "line": 1,
          "column": 13
        }
      }
    },
    {
      "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": 15,
      "end": 20,
      "loc": {
        "start": {
          "line": 3,
          "column": 0
        },
        "end": {
          "line": 3,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 21,
      "end": 26,
      "loc": {
        "start": {
          "line": 3,
          "column": 6
        },
        "end": {
          "line": 3,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 27,
      "end": 28,
      "loc": {
        "start": {
          "line": 3,
          "column": 12
        },
        "end": {
          "line": 3,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 29,
      "end": 36,
      "loc": {
        "start": {
          "line": 3,
          "column": 14
        },
        "end": {
          "line": 3,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 36,
      "end": 37,
      "loc": {
        "start": {
          "line": 3,
          "column": 21
        },
        "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": "./../utils",
      "start": 37,
      "end": 49,
      "loc": {
        "start": {
          "line": 3,
          "column": 22
        },
        "end": {
          "line": 3,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 49,
      "end": 50,
      "loc": {
        "start": {
          "line": 3,
          "column": 34
        },
        "end": {
          "line": 3,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 50,
      "end": 51,
      "loc": {
        "start": {
          "line": 3,
          "column": 35
        },
        "end": {
          "line": 3,
          "column": 36
        }
      }
    },
    {
      "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": 52,
      "end": 57,
      "loc": {
        "start": {
          "line": 4,
          "column": 0
        },
        "end": {
          "line": 4,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Helpers",
      "start": 58,
      "end": 65,
      "loc": {
        "start": {
          "line": 4,
          "column": 6
        },
        "end": {
          "line": 4,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 66,
      "end": 67,
      "loc": {
        "start": {
          "line": 4,
          "column": 14
        },
        "end": {
          "line": 4,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 68,
      "end": 75,
      "loc": {
        "start": {
          "line": 4,
          "column": 16
        },
        "end": {
          "line": 4,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 75,
      "end": 76,
      "loc": {
        "start": {
          "line": 4,
          "column": 23
        },
        "end": {
          "line": 4,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./helpers",
      "start": 76,
      "end": 87,
      "loc": {
        "start": {
          "line": 4,
          "column": 24
        },
        "end": {
          "line": 4,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 87,
      "end": 88,
      "loc": {
        "start": {
          "line": 4,
          "column": 35
        },
        "end": {
          "line": 4,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 88,
      "end": 89,
      "loc": {
        "start": {
          "line": 4,
          "column": 36
        },
        "end": {
          "line": 4,
          "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": 90,
      "end": 95,
      "loc": {
        "start": {
          "line": 5,
          "column": 0
        },
        "end": {
          "line": 5,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 96,
      "end": 97,
      "loc": {
        "start": {
          "line": 5,
          "column": 6
        },
        "end": {
          "line": 5,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 98,
      "end": 99,
      "loc": {
        "start": {
          "line": 5,
          "column": 8
        },
        "end": {
          "line": 5,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 100,
      "end": 107,
      "loc": {
        "start": {
          "line": 5,
          "column": 10
        },
        "end": {
          "line": 5,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 107,
      "end": 108,
      "loc": {
        "start": {
          "line": 5,
          "column": 17
        },
        "end": {
          "line": 5,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "lodash",
      "start": 108,
      "end": 116,
      "loc": {
        "start": {
          "line": 5,
          "column": 18
        },
        "end": {
          "line": 5,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 116,
      "end": 117,
      "loc": {
        "start": {
          "line": 5,
          "column": 26
        },
        "end": {
          "line": 5,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 117,
      "end": 118,
      "loc": {
        "start": {
          "line": 5,
          "column": 27
        },
        "end": {
          "line": 5,
          "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": 119,
      "end": 124,
      "loc": {
        "start": {
          "line": 6,
          "column": 0
        },
        "end": {
          "line": 6,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Association",
      "start": 125,
      "end": 136,
      "loc": {
        "start": {
          "line": 6,
          "column": 6
        },
        "end": {
          "line": 6,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 137,
      "end": 138,
      "loc": {
        "start": {
          "line": 6,
          "column": 18
        },
        "end": {
          "line": 6,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 139,
      "end": 146,
      "loc": {
        "start": {
          "line": 6,
          "column": 20
        },
        "end": {
          "line": 6,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 146,
      "end": 147,
      "loc": {
        "start": {
          "line": 6,
          "column": 27
        },
        "end": {
          "line": 6,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./base",
      "start": 147,
      "end": 155,
      "loc": {
        "start": {
          "line": 6,
          "column": 28
        },
        "end": {
          "line": 6,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 155,
      "end": 156,
      "loc": {
        "start": {
          "line": 6,
          "column": 36
        },
        "end": {
          "line": 6,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 156,
      "end": 157,
      "loc": {
        "start": {
          "line": 6,
          "column": 37
        },
        "end": {
          "line": 6,
          "column": 38
        }
      }
    },
    {
      "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": 158,
      "end": 163,
      "loc": {
        "start": {
          "line": 7,
          "column": 0
        },
        "end": {
          "line": 7,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsTo",
      "start": 164,
      "end": 173,
      "loc": {
        "start": {
          "line": 7,
          "column": 6
        },
        "end": {
          "line": 7,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 174,
      "end": 175,
      "loc": {
        "start": {
          "line": 7,
          "column": 16
        },
        "end": {
          "line": 7,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 176,
      "end": 183,
      "loc": {
        "start": {
          "line": 7,
          "column": 18
        },
        "end": {
          "line": 7,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 183,
      "end": 184,
      "loc": {
        "start": {
          "line": 7,
          "column": 25
        },
        "end": {
          "line": 7,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./belongs-to",
      "start": 184,
      "end": 198,
      "loc": {
        "start": {
          "line": 7,
          "column": 26
        },
        "end": {
          "line": 7,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 198,
      "end": 199,
      "loc": {
        "start": {
          "line": 7,
          "column": 40
        },
        "end": {
          "line": 7,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 199,
      "end": 200,
      "loc": {
        "start": {
          "line": 7,
          "column": 41
        },
        "end": {
          "line": 7,
          "column": 42
        }
      }
    },
    {
      "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": 201,
      "end": 206,
      "loc": {
        "start": {
          "line": 8,
          "column": 0
        },
        "end": {
          "line": 8,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasMany",
      "start": 207,
      "end": 214,
      "loc": {
        "start": {
          "line": 8,
          "column": 6
        },
        "end": {
          "line": 8,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 215,
      "end": 216,
      "loc": {
        "start": {
          "line": 8,
          "column": 14
        },
        "end": {
          "line": 8,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 217,
      "end": 224,
      "loc": {
        "start": {
          "line": 8,
          "column": 16
        },
        "end": {
          "line": 8,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 224,
      "end": 225,
      "loc": {
        "start": {
          "line": 8,
          "column": 23
        },
        "end": {
          "line": 8,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./has-many",
      "start": 225,
      "end": 237,
      "loc": {
        "start": {
          "line": 8,
          "column": 24
        },
        "end": {
          "line": 8,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 237,
      "end": 238,
      "loc": {
        "start": {
          "line": 8,
          "column": 36
        },
        "end": {
          "line": 8,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 238,
      "end": 239,
      "loc": {
        "start": {
          "line": 8,
          "column": 37
        },
        "end": {
          "line": 8,
          "column": 38
        }
      }
    },
    {
      "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": 240,
      "end": 245,
      "loc": {
        "start": {
          "line": 9,
          "column": 0
        },
        "end": {
          "line": 9,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasOne",
      "start": 246,
      "end": 252,
      "loc": {
        "start": {
          "line": 9,
          "column": 6
        },
        "end": {
          "line": 9,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 253,
      "end": 254,
      "loc": {
        "start": {
          "line": 9,
          "column": 13
        },
        "end": {
          "line": 9,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 255,
      "end": 262,
      "loc": {
        "start": {
          "line": 9,
          "column": 15
        },
        "end": {
          "line": 9,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 262,
      "end": 263,
      "loc": {
        "start": {
          "line": 9,
          "column": 22
        },
        "end": {
          "line": 9,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "./has-one",
      "start": 263,
      "end": 274,
      "loc": {
        "start": {
          "line": 9,
          "column": 23
        },
        "end": {
          "line": 9,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 274,
      "end": 275,
      "loc": {
        "start": {
          "line": 9,
          "column": 34
        },
        "end": {
          "line": 9,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 275,
      "end": 276,
      "loc": {
        "start": {
          "line": 9,
          "column": 35
        },
        "end": {
          "line": 9,
          "column": 36
        }
      }
    },
    {
      "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": 277,
      "end": 282,
      "loc": {
        "start": {
          "line": 10,
          "column": 0
        },
        "end": {
          "line": 10,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "AssociationError",
      "start": 283,
      "end": 299,
      "loc": {
        "start": {
          "line": 10,
          "column": 6
        },
        "end": {
          "line": 10,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 300,
      "end": 301,
      "loc": {
        "start": {
          "line": 10,
          "column": 23
        },
        "end": {
          "line": 10,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "require",
      "start": 302,
      "end": 309,
      "loc": {
        "start": {
          "line": 10,
          "column": 25
        },
        "end": {
          "line": 10,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 309,
      "end": 310,
      "loc": {
        "start": {
          "line": 10,
          "column": 32
        },
        "end": {
          "line": 10,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "../errors",
      "start": 310,
      "end": 321,
      "loc": {
        "start": {
          "line": 10,
          "column": 33
        },
        "end": {
          "line": 10,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 321,
      "end": 322,
      "loc": {
        "start": {
          "line": 10,
          "column": 44
        },
        "end": {
          "line": 10,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 322,
      "end": 323,
      "loc": {
        "start": {
          "line": 10,
          "column": 45
        },
        "end": {
          "line": 10,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "AssociationError",
      "start": 323,
      "end": 339,
      "loc": {
        "start": {
          "line": 10,
          "column": 46
        },
        "end": {
          "line": 10,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 339,
      "end": 340,
      "loc": {
        "start": {
          "line": 10,
          "column": 62
        },
        "end": {
          "line": 10,
          "column": 63
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n * Many-to-many association with a join table.\n *\n * When the join table has additional attributes, these can be passed in the options object:\n *\n * ```js\n * UserProject = sequelize.define('user_project', {\n *   role: Sequelize.STRING\n * });\n * User.belongsToMany(Project, { through: UserProject });\n * Project.belongsToMany(User, { through: UserProject });\n * // through is required!\n *\n * user.addProject(project, { through: { role: 'manager' }});\n * ```\n *\n * All methods allow you to pass either a persisted instance, its primary key, or a mixture:\n *\n * ```js\n * Project.create({ id: 11 }).then(function (project) {\n *   user.addProjects([project, 12]);\n * });\n * ```\n *\n * If you want to set several target instances, but with different attributes you have to set the attributes on the instance, using a property with the name of the through model:\n *\n * ```js\n * p1.UserProjects = {\n *   started: true\n * }\n * user.setProjects([p1, p2], { through: { started: false }}) // The default value is false, but p1 overrides that.\n * ```\n *\n * Similarly, when fetching through a join table with custom attributes, these attributes will be available as an object with the name of the through model.\n * ```js\n * user.getProjects().then(function (projects) {\n   *   let p1 = projects[0]\n   *   p1.UserProjects.started // Is this project started yet?\n   * })\n * ```\n *\n * In the API reference below, add the name of the association to the method, e.g. for `User.belongsToMany(Project)` the getter will be `user.getProjects()`.\n *\n * @see {@link Model.belongsToMany}\n ",
      "start": 342,
      "end": 1910,
      "loc": {
        "start": {
          "line": 12,
          "column": 0
        },
        "end": {
          "line": 56,
          "column": 3
        }
      }
    },
    {
      "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": 1911,
      "end": 1916,
      "loc": {
        "start": {
          "line": 57,
          "column": 0
        },
        "end": {
          "line": 57,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsToMany",
      "start": 1917,
      "end": 1930,
      "loc": {
        "start": {
          "line": 57,
          "column": 6
        },
        "end": {
          "line": 57,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "extends",
        "keyword": "extends",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "extends",
      "start": 1931,
      "end": 1938,
      "loc": {
        "start": {
          "line": 57,
          "column": 20
        },
        "end": {
          "line": 57,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Association",
      "start": 1939,
      "end": 1950,
      "loc": {
        "start": {
          "line": 57,
          "column": 28
        },
        "end": {
          "line": 57,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1951,
      "end": 1952,
      "loc": {
        "start": {
          "line": 57,
          "column": 40
        },
        "end": {
          "line": 57,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constructor",
      "start": 1955,
      "end": 1966,
      "loc": {
        "start": {
          "line": 58,
          "column": 2
        },
        "end": {
          "line": 58,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1966,
      "end": 1967,
      "loc": {
        "start": {
          "line": 58,
          "column": 13
        },
        "end": {
          "line": 58,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 1967,
      "end": 1973,
      "loc": {
        "start": {
          "line": 58,
          "column": 14
        },
        "end": {
          "line": 58,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1973,
      "end": 1974,
      "loc": {
        "start": {
          "line": 58,
          "column": 20
        },
        "end": {
          "line": 58,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 1975,
      "end": 1981,
      "loc": {
        "start": {
          "line": 58,
          "column": 22
        },
        "end": {
          "line": 58,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 1981,
      "end": 1982,
      "loc": {
        "start": {
          "line": 58,
          "column": 28
        },
        "end": {
          "line": 58,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 1983,
      "end": 1990,
      "loc": {
        "start": {
          "line": 58,
          "column": 30
        },
        "end": {
          "line": 58,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1990,
      "end": 1991,
      "loc": {
        "start": {
          "line": 58,
          "column": 37
        },
        "end": {
          "line": 58,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 1992,
      "end": 1993,
      "loc": {
        "start": {
          "line": 58,
          "column": 39
        },
        "end": {
          "line": 58,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "super",
        "keyword": "super",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "super",
      "start": 1998,
      "end": 2003,
      "loc": {
        "start": {
          "line": 59,
          "column": 4
        },
        "end": {
          "line": 59,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2003,
      "end": 2004,
      "loc": {
        "start": {
          "line": 59,
          "column": 9
        },
        "end": {
          "line": 59,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 2004,
      "end": 2010,
      "loc": {
        "start": {
          "line": 59,
          "column": 10
        },
        "end": {
          "line": 59,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2010,
      "end": 2011,
      "loc": {
        "start": {
          "line": 59,
          "column": 16
        },
        "end": {
          "line": 59,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 2012,
      "end": 2018,
      "loc": {
        "start": {
          "line": 59,
          "column": 18
        },
        "end": {
          "line": 59,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2018,
      "end": 2019,
      "loc": {
        "start": {
          "line": 59,
          "column": 24
        },
        "end": {
          "line": 59,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2020,
      "end": 2027,
      "loc": {
        "start": {
          "line": 59,
          "column": 26
        },
        "end": {
          "line": 59,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2027,
      "end": 2028,
      "loc": {
        "start": {
          "line": 59,
          "column": 33
        },
        "end": {
          "line": 59,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2028,
      "end": 2029,
      "loc": {
        "start": {
          "line": 59,
          "column": 34
        },
        "end": {
          "line": 59,
          "column": 35
        }
      }
    },
    {
      "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": 2035,
      "end": 2037,
      "loc": {
        "start": {
          "line": 61,
          "column": 4
        },
        "end": {
          "line": 61,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2038,
      "end": 2039,
      "loc": {
        "start": {
          "line": 61,
          "column": 7
        },
        "end": {
          "line": 61,
          "column": 8
        }
      }
    },
    {
      "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": 2039,
      "end": 2043,
      "loc": {
        "start": {
          "line": 61,
          "column": 8
        },
        "end": {
          "line": 61,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2043,
      "end": 2044,
      "loc": {
        "start": {
          "line": 61,
          "column": 12
        },
        "end": {
          "line": 61,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2044,
      "end": 2051,
      "loc": {
        "start": {
          "line": 61,
          "column": 13
        },
        "end": {
          "line": 61,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2051,
      "end": 2052,
      "loc": {
        "start": {
          "line": 61,
          "column": 20
        },
        "end": {
          "line": 61,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2052,
      "end": 2059,
      "loc": {
        "start": {
          "line": 61,
          "column": 21
        },
        "end": {
          "line": 61,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2060,
      "end": 2063,
      "loc": {
        "start": {
          "line": 61,
          "column": 29
        },
        "end": {
          "line": 61,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "undefined",
      "start": 2064,
      "end": 2073,
      "loc": {
        "start": {
          "line": 61,
          "column": 33
        },
        "end": {
          "line": 61,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 2074,
      "end": 2076,
      "loc": {
        "start": {
          "line": 61,
          "column": 43
        },
        "end": {
          "line": 61,
          "column": 45
        }
      }
    },
    {
      "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": 2077,
      "end": 2081,
      "loc": {
        "start": {
          "line": 61,
          "column": 46
        },
        "end": {
          "line": 61,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2081,
      "end": 2082,
      "loc": {
        "start": {
          "line": 61,
          "column": 50
        },
        "end": {
          "line": 61,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2082,
      "end": 2089,
      "loc": {
        "start": {
          "line": 61,
          "column": 51
        },
        "end": {
          "line": 61,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2089,
      "end": 2090,
      "loc": {
        "start": {
          "line": 61,
          "column": 58
        },
        "end": {
          "line": 61,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2090,
      "end": 2097,
      "loc": {
        "start": {
          "line": 61,
          "column": 59
        },
        "end": {
          "line": 61,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2098,
      "end": 2101,
      "loc": {
        "start": {
          "line": 61,
          "column": 67
        },
        "end": {
          "line": 61,
          "column": 70
        }
      }
    },
    {
      "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": 2102,
      "end": 2106,
      "loc": {
        "start": {
          "line": 61,
          "column": 71
        },
        "end": {
          "line": 61,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 2107,
      "end": 2109,
      "loc": {
        "start": {
          "line": 61,
          "column": 76
        },
        "end": {
          "line": 61,
          "column": 78
        }
      }
    },
    {
      "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": 2110,
      "end": 2114,
      "loc": {
        "start": {
          "line": 61,
          "column": 79
        },
        "end": {
          "line": 61,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2114,
      "end": 2115,
      "loc": {
        "start": {
          "line": 61,
          "column": 83
        },
        "end": {
          "line": 61,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2115,
      "end": 2122,
      "loc": {
        "start": {
          "line": 61,
          "column": 84
        },
        "end": {
          "line": 61,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2122,
      "end": 2123,
      "loc": {
        "start": {
          "line": 61,
          "column": 91
        },
        "end": {
          "line": 61,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2123,
      "end": 2130,
      "loc": {
        "start": {
          "line": 61,
          "column": 92
        },
        "end": {
          "line": 61,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 2131,
      "end": 2134,
      "loc": {
        "start": {
          "line": 61,
          "column": 100
        },
        "end": {
          "line": 61,
          "column": 103
        }
      }
    },
    {
      "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": 2135,
      "end": 2139,
      "loc": {
        "start": {
          "line": 61,
          "column": 104
        },
        "end": {
          "line": 61,
          "column": 108
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2139,
      "end": 2140,
      "loc": {
        "start": {
          "line": 61,
          "column": 108
        },
        "end": {
          "line": 61,
          "column": 109
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2141,
      "end": 2142,
      "loc": {
        "start": {
          "line": 61,
          "column": 110
        },
        "end": {
          "line": 61,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 2149,
      "end": 2154,
      "loc": {
        "start": {
          "line": 62,
          "column": 6
        },
        "end": {
          "line": 62,
          "column": 11
        }
      }
    },
    {
      "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": 2155,
      "end": 2158,
      "loc": {
        "start": {
          "line": 62,
          "column": 12
        },
        "end": {
          "line": 62,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "AssociationError",
      "start": 2159,
      "end": 2175,
      "loc": {
        "start": {
          "line": 62,
          "column": 16
        },
        "end": {
          "line": 62,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2175,
      "end": 2176,
      "loc": {
        "start": {
          "line": 62,
          "column": 32
        },
        "end": {
          "line": 62,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "belongsToMany must be given a through option, either a string or a model",
      "start": 2176,
      "end": 2250,
      "loc": {
        "start": {
          "line": 62,
          "column": 33
        },
        "end": {
          "line": 62,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2250,
      "end": 2251,
      "loc": {
        "start": {
          "line": 62,
          "column": 107
        },
        "end": {
          "line": 62,
          "column": 108
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2251,
      "end": 2252,
      "loc": {
        "start": {
          "line": 62,
          "column": 108
        },
        "end": {
          "line": 62,
          "column": 109
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2257,
      "end": 2258,
      "loc": {
        "start": {
          "line": 63,
          "column": 4
        },
        "end": {
          "line": 63,
          "column": 5
        }
      }
    },
    {
      "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": 2264,
      "end": 2266,
      "loc": {
        "start": {
          "line": 65,
          "column": 4
        },
        "end": {
          "line": 65,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2267,
      "end": 2268,
      "loc": {
        "start": {
          "line": 65,
          "column": 7
        },
        "end": {
          "line": 65,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 2268,
      "end": 2269,
      "loc": {
        "start": {
          "line": 65,
          "column": 8
        },
        "end": {
          "line": 65,
          "column": 9
        }
      }
    },
    {
      "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": 2269,
      "end": 2273,
      "loc": {
        "start": {
          "line": 65,
          "column": 9
        },
        "end": {
          "line": 65,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2273,
      "end": 2274,
      "loc": {
        "start": {
          "line": 65,
          "column": 13
        },
        "end": {
          "line": 65,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2274,
      "end": 2281,
      "loc": {
        "start": {
          "line": 65,
          "column": 14
        },
        "end": {
          "line": 65,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2281,
      "end": 2282,
      "loc": {
        "start": {
          "line": 65,
          "column": 21
        },
        "end": {
          "line": 65,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2282,
      "end": 2289,
      "loc": {
        "start": {
          "line": 65,
          "column": 22
        },
        "end": {
          "line": 65,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2289,
      "end": 2290,
      "loc": {
        "start": {
          "line": 65,
          "column": 29
        },
        "end": {
          "line": 65,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 2290,
      "end": 2295,
      "loc": {
        "start": {
          "line": 65,
          "column": 30
        },
        "end": {
          "line": 65,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2295,
      "end": 2296,
      "loc": {
        "start": {
          "line": 65,
          "column": 35
        },
        "end": {
          "line": 65,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2297,
      "end": 2298,
      "loc": {
        "start": {
          "line": 65,
          "column": 37
        },
        "end": {
          "line": 65,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2305,
      "end": 2309,
      "loc": {
        "start": {
          "line": 66,
          "column": 6
        },
        "end": {
          "line": 66,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2309,
      "end": 2310,
      "loc": {
        "start": {
          "line": 66,
          "column": 10
        },
        "end": {
          "line": 66,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2310,
      "end": 2317,
      "loc": {
        "start": {
          "line": 66,
          "column": 11
        },
        "end": {
          "line": 66,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2317,
      "end": 2318,
      "loc": {
        "start": {
          "line": 66,
          "column": 18
        },
        "end": {
          "line": 66,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2318,
      "end": 2325,
      "loc": {
        "start": {
          "line": 66,
          "column": 19
        },
        "end": {
          "line": 66,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2326,
      "end": 2327,
      "loc": {
        "start": {
          "line": 66,
          "column": 27
        },
        "end": {
          "line": 66,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2328,
      "end": 2329,
      "loc": {
        "start": {
          "line": 66,
          "column": 29
        },
        "end": {
          "line": 66,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 2338,
      "end": 2343,
      "loc": {
        "start": {
          "line": 67,
          "column": 8
        },
        "end": {
          "line": 67,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2343,
      "end": 2344,
      "loc": {
        "start": {
          "line": 67,
          "column": 13
        },
        "end": {
          "line": 67,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2345,
      "end": 2352,
      "loc": {
        "start": {
          "line": 67,
          "column": 15
        },
        "end": {
          "line": 67,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2352,
      "end": 2353,
      "loc": {
        "start": {
          "line": 67,
          "column": 22
        },
        "end": {
          "line": 67,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2353,
      "end": 2360,
      "loc": {
        "start": {
          "line": 67,
          "column": 23
        },
        "end": {
          "line": 67,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2367,
      "end": 2368,
      "loc": {
        "start": {
          "line": 68,
          "column": 6
        },
        "end": {
          "line": 68,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2368,
      "end": 2369,
      "loc": {
        "start": {
          "line": 68,
          "column": 7
        },
        "end": {
          "line": 68,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2374,
      "end": 2375,
      "loc": {
        "start": {
          "line": 69,
          "column": 4
        },
        "end": {
          "line": 69,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2381,
      "end": 2385,
      "loc": {
        "start": {
          "line": 71,
          "column": 4
        },
        "end": {
          "line": 71,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2385,
      "end": 2386,
      "loc": {
        "start": {
          "line": 71,
          "column": 8
        },
        "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": "associationType",
      "start": 2386,
      "end": 2401,
      "loc": {
        "start": {
          "line": 71,
          "column": 9
        },
        "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": 2402,
      "end": 2403,
      "loc": {
        "start": {
          "line": 71,
          "column": 25
        },
        "end": {
          "line": 71,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "BelongsToMany",
      "start": 2404,
      "end": 2419,
      "loc": {
        "start": {
          "line": 71,
          "column": 27
        },
        "end": {
          "line": 71,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2419,
      "end": 2420,
      "loc": {
        "start": {
          "line": 71,
          "column": 42
        },
        "end": {
          "line": 71,
          "column": 43
        }
      }
    },
    {
      "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": 2425,
      "end": 2429,
      "loc": {
        "start": {
          "line": 72,
          "column": 4
        },
        "end": {
          "line": 72,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2429,
      "end": 2430,
      "loc": {
        "start": {
          "line": 72,
          "column": 8
        },
        "end": {
          "line": 72,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAssociation",
      "start": 2430,
      "end": 2447,
      "loc": {
        "start": {
          "line": 72,
          "column": 9
        },
        "end": {
          "line": 72,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2448,
      "end": 2449,
      "loc": {
        "start": {
          "line": 72,
          "column": 27
        },
        "end": {
          "line": 72,
          "column": 28
        }
      }
    },
    {
      "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": 2450,
      "end": 2454,
      "loc": {
        "start": {
          "line": 72,
          "column": 29
        },
        "end": {
          "line": 72,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2454,
      "end": 2455,
      "loc": {
        "start": {
          "line": 72,
          "column": 33
        },
        "end": {
          "line": 72,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2460,
      "end": 2464,
      "loc": {
        "start": {
          "line": 73,
          "column": 4
        },
        "end": {
          "line": 73,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2464,
      "end": 2465,
      "loc": {
        "start": {
          "line": 73,
          "column": 8
        },
        "end": {
          "line": 73,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 2465,
      "end": 2474,
      "loc": {
        "start": {
          "line": 73,
          "column": 9
        },
        "end": {
          "line": 73,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2475,
      "end": 2476,
      "loc": {
        "start": {
          "line": 73,
          "column": 19
        },
        "end": {
          "line": 73,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 2477,
      "end": 2483,
      "loc": {
        "start": {
          "line": 73,
          "column": 21
        },
        "end": {
          "line": 73,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2483,
      "end": 2484,
      "loc": {
        "start": {
          "line": 73,
          "column": 27
        },
        "end": {
          "line": 73,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 2484,
      "end": 2493,
      "loc": {
        "start": {
          "line": 73,
          "column": 28
        },
        "end": {
          "line": 73,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2493,
      "end": 2494,
      "loc": {
        "start": {
          "line": 73,
          "column": 37
        },
        "end": {
          "line": 73,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2499,
      "end": 2503,
      "loc": {
        "start": {
          "line": 74,
          "column": 4
        },
        "end": {
          "line": 74,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2503,
      "end": 2504,
      "loc": {
        "start": {
          "line": 74,
          "column": 8
        },
        "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": "through",
      "start": 2504,
      "end": 2511,
      "loc": {
        "start": {
          "line": 74,
          "column": 9
        },
        "end": {
          "line": 74,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2512,
      "end": 2513,
      "loc": {
        "start": {
          "line": 74,
          "column": 17
        },
        "end": {
          "line": 74,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 2514,
      "end": 2515,
      "loc": {
        "start": {
          "line": 74,
          "column": 19
        },
        "end": {
          "line": 74,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2515,
      "end": 2516,
      "loc": {
        "start": {
          "line": 74,
          "column": 20
        },
        "end": {
          "line": 74,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 2516,
      "end": 2522,
      "loc": {
        "start": {
          "line": 74,
          "column": 21
        },
        "end": {
          "line": 74,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2522,
      "end": 2523,
      "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
      },
      "start": 2523,
      "end": 2524,
      "loc": {
        "start": {
          "line": 74,
          "column": 28
        },
        "end": {
          "line": 74,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2524,
      "end": 2525,
      "loc": {
        "start": {
          "line": 74,
          "column": 29
        },
        "end": {
          "line": 74,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2525,
      "end": 2526,
      "loc": {
        "start": {
          "line": 74,
          "column": 30
        },
        "end": {
          "line": 74,
          "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": 2527,
      "end": 2531,
      "loc": {
        "start": {
          "line": 74,
          "column": 32
        },
        "end": {
          "line": 74,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2531,
      "end": 2532,
      "loc": {
        "start": {
          "line": 74,
          "column": 36
        },
        "end": {
          "line": 74,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2532,
      "end": 2539,
      "loc": {
        "start": {
          "line": 74,
          "column": 37
        },
        "end": {
          "line": 74,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2539,
      "end": 2540,
      "loc": {
        "start": {
          "line": 74,
          "column": 44
        },
        "end": {
          "line": 74,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 2540,
      "end": 2547,
      "loc": {
        "start": {
          "line": 74,
          "column": 45
        },
        "end": {
          "line": 74,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2547,
      "end": 2548,
      "loc": {
        "start": {
          "line": 74,
          "column": 52
        },
        "end": {
          "line": 74,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2548,
      "end": 2549,
      "loc": {
        "start": {
          "line": 74,
          "column": 53
        },
        "end": {
          "line": 74,
          "column": 54
        }
      }
    },
    {
      "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": 2554,
      "end": 2558,
      "loc": {
        "start": {
          "line": 75,
          "column": 4
        },
        "end": {
          "line": 75,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2558,
      "end": 2559,
      "loc": {
        "start": {
          "line": 75,
          "column": 8
        },
        "end": {
          "line": 75,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isMultiAssociation",
      "start": 2559,
      "end": 2577,
      "loc": {
        "start": {
          "line": 75,
          "column": 9
        },
        "end": {
          "line": 75,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2578,
      "end": 2579,
      "loc": {
        "start": {
          "line": 75,
          "column": 28
        },
        "end": {
          "line": 75,
          "column": 29
        }
      }
    },
    {
      "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": 2580,
      "end": 2584,
      "loc": {
        "start": {
          "line": 75,
          "column": 30
        },
        "end": {
          "line": 75,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2584,
      "end": 2585,
      "loc": {
        "start": {
          "line": 75,
          "column": 34
        },
        "end": {
          "line": 75,
          "column": 35
        }
      }
    },
    {
      "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": 2590,
      "end": 2594,
      "loc": {
        "start": {
          "line": 76,
          "column": 4
        },
        "end": {
          "line": 76,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2594,
      "end": 2595,
      "loc": {
        "start": {
          "line": 76,
          "column": 8
        },
        "end": {
          "line": 76,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "doubleLinked",
      "start": 2595,
      "end": 2607,
      "loc": {
        "start": {
          "line": 76,
          "column": 9
        },
        "end": {
          "line": 76,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2608,
      "end": 2609,
      "loc": {
        "start": {
          "line": 76,
          "column": 22
        },
        "end": {
          "line": 76,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 2610,
      "end": 2615,
      "loc": {
        "start": {
          "line": 76,
          "column": 24
        },
        "end": {
          "line": 76,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2615,
      "end": 2616,
      "loc": {
        "start": {
          "line": 76,
          "column": 29
        },
        "end": {
          "line": 76,
          "column": 30
        }
      }
    },
    {
      "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": 2622,
      "end": 2624,
      "loc": {
        "start": {
          "line": 78,
          "column": 4
        },
        "end": {
          "line": 78,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2625,
      "end": 2626,
      "loc": {
        "start": {
          "line": 78,
          "column": 7
        },
        "end": {
          "line": 78,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 2626,
      "end": 2627,
      "loc": {
        "start": {
          "line": 78,
          "column": 8
        },
        "end": {
          "line": 78,
          "column": 9
        }
      }
    },
    {
      "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": 2627,
      "end": 2631,
      "loc": {
        "start": {
          "line": 78,
          "column": 9
        },
        "end": {
          "line": 78,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2631,
      "end": 2632,
      "loc": {
        "start": {
          "line": 78,
          "column": 13
        },
        "end": {
          "line": 78,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2632,
      "end": 2634,
      "loc": {
        "start": {
          "line": 78,
          "column": 14
        },
        "end": {
          "line": 78,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 2635,
      "end": 2637,
      "loc": {
        "start": {
          "line": 78,
          "column": 17
        },
        "end": {
          "line": 78,
          "column": 19
        }
      }
    },
    {
      "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": 2638,
      "end": 2642,
      "loc": {
        "start": {
          "line": 78,
          "column": 20
        },
        "end": {
          "line": 78,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2642,
      "end": 2643,
      "loc": {
        "start": {
          "line": 78,
          "column": 24
        },
        "end": {
          "line": 78,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isSelfAssociation",
      "start": 2643,
      "end": 2660,
      "loc": {
        "start": {
          "line": 78,
          "column": 25
        },
        "end": {
          "line": 78,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2660,
      "end": 2661,
      "loc": {
        "start": {
          "line": 78,
          "column": 42
        },
        "end": {
          "line": 78,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2662,
      "end": 2663,
      "loc": {
        "start": {
          "line": 78,
          "column": 44
        },
        "end": {
          "line": 78,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "throw",
        "keyword": "throw",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "throw",
      "start": 2670,
      "end": 2675,
      "loc": {
        "start": {
          "line": 79,
          "column": 6
        },
        "end": {
          "line": 79,
          "column": 11
        }
      }
    },
    {
      "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": 2676,
      "end": 2679,
      "loc": {
        "start": {
          "line": 79,
          "column": 12
        },
        "end": {
          "line": 79,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "AssociationError",
      "start": 2680,
      "end": 2696,
      "loc": {
        "start": {
          "line": 79,
          "column": 16
        },
        "end": {
          "line": 79,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2696,
      "end": 2697,
      "loc": {
        "start": {
          "line": 79,
          "column": 32
        },
        "end": {
          "line": 79,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "'as' must be defined for many-to-many self-associations",
      "start": 2697,
      "end": 2756,
      "loc": {
        "start": {
          "line": 79,
          "column": 33
        },
        "end": {
          "line": 79,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2756,
      "end": 2757,
      "loc": {
        "start": {
          "line": 79,
          "column": 92
        },
        "end": {
          "line": 79,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2757,
      "end": 2758,
      "loc": {
        "start": {
          "line": 79,
          "column": 93
        },
        "end": {
          "line": 79,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2763,
      "end": 2764,
      "loc": {
        "start": {
          "line": 80,
          "column": 4
        },
        "end": {
          "line": 80,
          "column": 5
        }
      }
    },
    {
      "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": 2770,
      "end": 2772,
      "loc": {
        "start": {
          "line": 82,
          "column": 4
        },
        "end": {
          "line": 82,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2773,
      "end": 2774,
      "loc": {
        "start": {
          "line": 82,
          "column": 7
        },
        "end": {
          "line": 82,
          "column": 8
        }
      }
    },
    {
      "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": 2774,
      "end": 2778,
      "loc": {
        "start": {
          "line": 82,
          "column": 8
        },
        "end": {
          "line": 82,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2778,
      "end": 2779,
      "loc": {
        "start": {
          "line": 82,
          "column": 12
        },
        "end": {
          "line": 82,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2779,
      "end": 2781,
      "loc": {
        "start": {
          "line": 82,
          "column": 13
        },
        "end": {
          "line": 82,
          "column": 15
        }
      }
    },
    {
      "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": 82,
          "column": 15
        },
        "end": {
          "line": 82,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2783,
      "end": 2784,
      "loc": {
        "start": {
          "line": 82,
          "column": 17
        },
        "end": {
          "line": 82,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2791,
      "end": 2795,
      "loc": {
        "start": {
          "line": 83,
          "column": 6
        },
        "end": {
          "line": 83,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2795,
      "end": 2796,
      "loc": {
        "start": {
          "line": 83,
          "column": 10
        },
        "end": {
          "line": 83,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isAliased",
      "start": 2796,
      "end": 2805,
      "loc": {
        "start": {
          "line": 83,
          "column": 11
        },
        "end": {
          "line": 83,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2806,
      "end": 2807,
      "loc": {
        "start": {
          "line": 83,
          "column": 21
        },
        "end": {
          "line": 83,
          "column": 22
        }
      }
    },
    {
      "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": 2808,
      "end": 2812,
      "loc": {
        "start": {
          "line": 83,
          "column": 23
        },
        "end": {
          "line": 83,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2812,
      "end": 2813,
      "loc": {
        "start": {
          "line": 83,
          "column": 27
        },
        "end": {
          "line": 83,
          "column": 28
        }
      }
    },
    {
      "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": 2821,
      "end": 2823,
      "loc": {
        "start": {
          "line": 85,
          "column": 6
        },
        "end": {
          "line": 85,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2824,
      "end": 2825,
      "loc": {
        "start": {
          "line": 85,
          "column": 9
        },
        "end": {
          "line": 85,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 2825,
      "end": 2830,
      "loc": {
        "start": {
          "line": 85,
          "column": 10
        },
        "end": {
          "line": 85,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2830,
      "end": 2831,
      "loc": {
        "start": {
          "line": 85,
          "column": 15
        },
        "end": {
          "line": 85,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 2831,
      "end": 2832,
      "loc": {
        "start": {
          "line": 85,
          "column": 16
        },
        "end": {
          "line": 85,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2832,
      "end": 2833,
      "loc": {
        "start": {
          "line": 85,
          "column": 17
        },
        "end": {
          "line": 85,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isPlainObject",
      "start": 2833,
      "end": 2846,
      "loc": {
        "start": {
          "line": 85,
          "column": 18
        },
        "end": {
          "line": 85,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2846,
      "end": 2847,
      "loc": {
        "start": {
          "line": 85,
          "column": 31
        },
        "end": {
          "line": 85,
          "column": 32
        }
      }
    },
    {
      "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": 2847,
      "end": 2851,
      "loc": {
        "start": {
          "line": 85,
          "column": 32
        },
        "end": {
          "line": 85,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2851,
      "end": 2852,
      "loc": {
        "start": {
          "line": 85,
          "column": 36
        },
        "end": {
          "line": 85,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2852,
      "end": 2854,
      "loc": {
        "start": {
          "line": 85,
          "column": 37
        },
        "end": {
          "line": 85,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2854,
      "end": 2855,
      "loc": {
        "start": {
          "line": 85,
          "column": 39
        },
        "end": {
          "line": 85,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2855,
      "end": 2856,
      "loc": {
        "start": {
          "line": 85,
          "column": 40
        },
        "end": {
          "line": 85,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2857,
      "end": 2858,
      "loc": {
        "start": {
          "line": 85,
          "column": 42
        },
        "end": {
          "line": 85,
          "column": 43
        }
      }
    },
    {
      "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": 2867,
      "end": 2871,
      "loc": {
        "start": {
          "line": 86,
          "column": 8
        },
        "end": {
          "line": 86,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2871,
      "end": 2872,
      "loc": {
        "start": {
          "line": 86,
          "column": 12
        },
        "end": {
          "line": 86,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2872,
      "end": 2879,
      "loc": {
        "start": {
          "line": 86,
          "column": 13
        },
        "end": {
          "line": 86,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2879,
      "end": 2880,
      "loc": {
        "start": {
          "line": 86,
          "column": 20
        },
        "end": {
          "line": 86,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 2880,
      "end": 2884,
      "loc": {
        "start": {
          "line": 86,
          "column": 21
        },
        "end": {
          "line": 86,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2885,
      "end": 2886,
      "loc": {
        "start": {
          "line": 86,
          "column": 26
        },
        "end": {
          "line": 86,
          "column": 27
        }
      }
    },
    {
      "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": 2887,
      "end": 2891,
      "loc": {
        "start": {
          "line": 86,
          "column": 28
        },
        "end": {
          "line": 86,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2891,
      "end": 2892,
      "loc": {
        "start": {
          "line": 86,
          "column": 32
        },
        "end": {
          "line": 86,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2892,
      "end": 2894,
      "loc": {
        "start": {
          "line": 86,
          "column": 33
        },
        "end": {
          "line": 86,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2894,
      "end": 2895,
      "loc": {
        "start": {
          "line": 86,
          "column": 35
        },
        "end": {
          "line": 86,
          "column": 36
        }
      }
    },
    {
      "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": 2904,
      "end": 2908,
      "loc": {
        "start": {
          "line": 87,
          "column": 8
        },
        "end": {
          "line": 87,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2908,
      "end": 2909,
      "loc": {
        "start": {
          "line": 87,
          "column": 12
        },
        "end": {
          "line": 87,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2909,
      "end": 2911,
      "loc": {
        "start": {
          "line": 87,
          "column": 13
        },
        "end": {
          "line": 87,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2912,
      "end": 2913,
      "loc": {
        "start": {
          "line": 87,
          "column": 16
        },
        "end": {
          "line": 87,
          "column": 17
        }
      }
    },
    {
      "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": 2914,
      "end": 2918,
      "loc": {
        "start": {
          "line": 87,
          "column": 18
        },
        "end": {
          "line": 87,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2918,
      "end": 2919,
      "loc": {
        "start": {
          "line": 87,
          "column": 22
        },
        "end": {
          "line": 87,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2919,
      "end": 2921,
      "loc": {
        "start": {
          "line": 87,
          "column": 23
        },
        "end": {
          "line": 87,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2921,
      "end": 2922,
      "loc": {
        "start": {
          "line": 87,
          "column": 25
        },
        "end": {
          "line": 87,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 2922,
      "end": 2928,
      "loc": {
        "start": {
          "line": 87,
          "column": 26
        },
        "end": {
          "line": 87,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2928,
      "end": 2929,
      "loc": {
        "start": {
          "line": 87,
          "column": 32
        },
        "end": {
          "line": 87,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2936,
      "end": 2937,
      "loc": {
        "start": {
          "line": 88,
          "column": 6
        },
        "end": {
          "line": 88,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 2938,
      "end": 2942,
      "loc": {
        "start": {
          "line": 88,
          "column": 8
        },
        "end": {
          "line": 88,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2943,
      "end": 2944,
      "loc": {
        "start": {
          "line": 88,
          "column": 13
        },
        "end": {
          "line": 88,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 2953,
      "end": 2957,
      "loc": {
        "start": {
          "line": 89,
          "column": 8
        },
        "end": {
          "line": 89,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2957,
      "end": 2958,
      "loc": {
        "start": {
          "line": 89,
          "column": 12
        },
        "end": {
          "line": 89,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 2958,
      "end": 2965,
      "loc": {
        "start": {
          "line": 89,
          "column": 13
        },
        "end": {
          "line": 89,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2965,
      "end": 2966,
      "loc": {
        "start": {
          "line": 89,
          "column": 20
        },
        "end": {
          "line": 89,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 2966,
      "end": 2970,
      "loc": {
        "start": {
          "line": 89,
          "column": 21
        },
        "end": {
          "line": 89,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 2971,
      "end": 2972,
      "loc": {
        "start": {
          "line": 89,
          "column": 26
        },
        "end": {
          "line": 89,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 2973,
      "end": 2974,
      "loc": {
        "start": {
          "line": 89,
          "column": 28
        },
        "end": {
          "line": 89,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 2985,
      "end": 2991,
      "loc": {
        "start": {
          "line": 90,
          "column": 10
        },
        "end": {
          "line": 90,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2991,
      "end": 2992,
      "loc": {
        "start": {
          "line": 90,
          "column": 16
        },
        "end": {
          "line": 90,
          "column": 17
        }
      }
    },
    {
      "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": 2993,
      "end": 2997,
      "loc": {
        "start": {
          "line": 90,
          "column": 18
        },
        "end": {
          "line": 90,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 2997,
      "end": 2998,
      "loc": {
        "start": {
          "line": 90,
          "column": 22
        },
        "end": {
          "line": 90,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 2998,
      "end": 3000,
      "loc": {
        "start": {
          "line": 90,
          "column": 23
        },
        "end": {
          "line": 90,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3000,
      "end": 3001,
      "loc": {
        "start": {
          "line": 90,
          "column": 25
        },
        "end": {
          "line": 90,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 3012,
      "end": 3020,
      "loc": {
        "start": {
          "line": 91,
          "column": 10
        },
        "end": {
          "line": 91,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3020,
      "end": 3021,
      "loc": {
        "start": {
          "line": 91,
          "column": 18
        },
        "end": {
          "line": 91,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 3022,
      "end": 3027,
      "loc": {
        "start": {
          "line": 91,
          "column": 20
        },
        "end": {
          "line": 91,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3027,
      "end": 3028,
      "loc": {
        "start": {
          "line": 91,
          "column": 25
        },
        "end": {
          "line": 91,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singularize",
      "start": 3028,
      "end": 3039,
      "loc": {
        "start": {
          "line": 91,
          "column": 26
        },
        "end": {
          "line": 91,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3039,
      "end": 3040,
      "loc": {
        "start": {
          "line": 91,
          "column": 37
        },
        "end": {
          "line": 91,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3040,
      "end": 3044,
      "loc": {
        "start": {
          "line": 91,
          "column": 38
        },
        "end": {
          "line": 91,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3044,
      "end": 3045,
      "loc": {
        "start": {
          "line": 91,
          "column": 42
        },
        "end": {
          "line": 91,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 3045,
      "end": 3047,
      "loc": {
        "start": {
          "line": 91,
          "column": 43
        },
        "end": {
          "line": 91,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3047,
      "end": 3048,
      "loc": {
        "start": {
          "line": 91,
          "column": 45
        },
        "end": {
          "line": 91,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3057,
      "end": 3058,
      "loc": {
        "start": {
          "line": 92,
          "column": 8
        },
        "end": {
          "line": 92,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3058,
      "end": 3059,
      "loc": {
        "start": {
          "line": 92,
          "column": 9
        },
        "end": {
          "line": 92,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3066,
      "end": 3067,
      "loc": {
        "start": {
          "line": 93,
          "column": 6
        },
        "end": {
          "line": 93,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3072,
      "end": 3073,
      "loc": {
        "start": {
          "line": 94,
          "column": 4
        },
        "end": {
          "line": 94,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 3074,
      "end": 3078,
      "loc": {
        "start": {
          "line": 94,
          "column": 6
        },
        "end": {
          "line": 94,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3079,
      "end": 3080,
      "loc": {
        "start": {
          "line": 94,
          "column": 11
        },
        "end": {
          "line": 94,
          "column": 12
        }
      }
    },
    {
      "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": 3087,
      "end": 3091,
      "loc": {
        "start": {
          "line": 95,
          "column": 6
        },
        "end": {
          "line": 95,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3091,
      "end": 3092,
      "loc": {
        "start": {
          "line": 95,
          "column": 10
        },
        "end": {
          "line": 95,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 3092,
      "end": 3094,
      "loc": {
        "start": {
          "line": 95,
          "column": 11
        },
        "end": {
          "line": 95,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3095,
      "end": 3096,
      "loc": {
        "start": {
          "line": 95,
          "column": 14
        },
        "end": {
          "line": 95,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3097,
      "end": 3101,
      "loc": {
        "start": {
          "line": 95,
          "column": 16
        },
        "end": {
          "line": 95,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3101,
      "end": 3102,
      "loc": {
        "start": {
          "line": 95,
          "column": 20
        },
        "end": {
          "line": 95,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 3102,
      "end": 3108,
      "loc": {
        "start": {
          "line": 95,
          "column": 21
        },
        "end": {
          "line": 95,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3108,
      "end": 3109,
      "loc": {
        "start": {
          "line": 95,
          "column": 27
        },
        "end": {
          "line": 95,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3109,
      "end": 3116,
      "loc": {
        "start": {
          "line": 95,
          "column": 28
        },
        "end": {
          "line": 95,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3116,
      "end": 3117,
      "loc": {
        "start": {
          "line": 95,
          "column": 35
        },
        "end": {
          "line": 95,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 3117,
      "end": 3121,
      "loc": {
        "start": {
          "line": 95,
          "column": 36
        },
        "end": {
          "line": 95,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3121,
      "end": 3122,
      "loc": {
        "start": {
          "line": 95,
          "column": 40
        },
        "end": {
          "line": 95,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 3122,
      "end": 3128,
      "loc": {
        "start": {
          "line": 95,
          "column": 41
        },
        "end": {
          "line": 95,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3128,
      "end": 3129,
      "loc": {
        "start": {
          "line": 95,
          "column": 47
        },
        "end": {
          "line": 95,
          "column": 48
        }
      }
    },
    {
      "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": 3136,
      "end": 3140,
      "loc": {
        "start": {
          "line": 96,
          "column": 6
        },
        "end": {
          "line": 96,
          "column": 10
        }
      }
    },
    {
      "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": 96,
          "column": 10
        },
        "end": {
          "line": 96,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3141,
      "end": 3148,
      "loc": {
        "start": {
          "line": 96,
          "column": 11
        },
        "end": {
          "line": 96,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3148,
      "end": 3149,
      "loc": {
        "start": {
          "line": 96,
          "column": 18
        },
        "end": {
          "line": 96,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 3149,
      "end": 3153,
      "loc": {
        "start": {
          "line": 96,
          "column": 19
        },
        "end": {
          "line": 96,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3154,
      "end": 3155,
      "loc": {
        "start": {
          "line": 96,
          "column": 24
        },
        "end": {
          "line": 96,
          "column": 25
        }
      }
    },
    {
      "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": 3156,
      "end": 3160,
      "loc": {
        "start": {
          "line": 96,
          "column": 26
        },
        "end": {
          "line": 96,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3160,
      "end": 3161,
      "loc": {
        "start": {
          "line": 96,
          "column": 30
        },
        "end": {
          "line": 96,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 3161,
      "end": 3167,
      "loc": {
        "start": {
          "line": 96,
          "column": 31
        },
        "end": {
          "line": 96,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3167,
      "end": 3168,
      "loc": {
        "start": {
          "line": 96,
          "column": 37
        },
        "end": {
          "line": 96,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3168,
      "end": 3175,
      "loc": {
        "start": {
          "line": 96,
          "column": 38
        },
        "end": {
          "line": 96,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3175,
      "end": 3176,
      "loc": {
        "start": {
          "line": 96,
          "column": 45
        },
        "end": {
          "line": 96,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 3176,
      "end": 3180,
      "loc": {
        "start": {
          "line": 96,
          "column": 46
        },
        "end": {
          "line": 96,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3180,
      "end": 3181,
      "loc": {
        "start": {
          "line": 96,
          "column": 50
        },
        "end": {
          "line": 96,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3186,
      "end": 3187,
      "loc": {
        "start": {
          "line": 97,
          "column": 4
        },
        "end": {
          "line": 97,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3193,
      "end": 3197,
      "loc": {
        "start": {
          "line": 99,
          "column": 4
        },
        "end": {
          "line": 99,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3197,
      "end": 3198,
      "loc": {
        "start": {
          "line": 99,
          "column": 8
        },
        "end": {
          "line": 99,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "combinedTableName",
      "start": 3198,
      "end": 3215,
      "loc": {
        "start": {
          "line": 99,
          "column": 9
        },
        "end": {
          "line": 99,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3216,
      "end": 3217,
      "loc": {
        "start": {
          "line": 99,
          "column": 27
        },
        "end": {
          "line": 99,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 3218,
      "end": 3223,
      "loc": {
        "start": {
          "line": 99,
          "column": 29
        },
        "end": {
          "line": 99,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3223,
      "end": 3224,
      "loc": {
        "start": {
          "line": 99,
          "column": 34
        },
        "end": {
          "line": 99,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "combineTableNames",
      "start": 3224,
      "end": 3241,
      "loc": {
        "start": {
          "line": 99,
          "column": 35
        },
        "end": {
          "line": 99,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3241,
      "end": 3242,
      "loc": {
        "start": {
          "line": 99,
          "column": 52
        },
        "end": {
          "line": 99,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3249,
      "end": 3253,
      "loc": {
        "start": {
          "line": 100,
          "column": 6
        },
        "end": {
          "line": 100,
          "column": 10
        }
      }
    },
    {
      "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": 100,
          "column": 10
        },
        "end": {
          "line": 100,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 3254,
      "end": 3260,
      "loc": {
        "start": {
          "line": 100,
          "column": 11
        },
        "end": {
          "line": 100,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3260,
      "end": 3261,
      "loc": {
        "start": {
          "line": 100,
          "column": 17
        },
        "end": {
          "line": 100,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 3261,
      "end": 3270,
      "loc": {
        "start": {
          "line": 100,
          "column": 18
        },
        "end": {
          "line": 100,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3270,
      "end": 3271,
      "loc": {
        "start": {
          "line": 100,
          "column": 27
        },
        "end": {
          "line": 100,
          "column": 28
        }
      }
    },
    {
      "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": 3278,
      "end": 3282,
      "loc": {
        "start": {
          "line": 101,
          "column": 6
        },
        "end": {
          "line": 101,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3282,
      "end": 3283,
      "loc": {
        "start": {
          "line": 101,
          "column": 10
        },
        "end": {
          "line": 101,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isSelfAssociation",
      "start": 3283,
      "end": 3300,
      "loc": {
        "start": {
          "line": 101,
          "column": 11
        },
        "end": {
          "line": 101,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3301,
      "end": 3302,
      "loc": {
        "start": {
          "line": 101,
          "column": 29
        },
        "end": {
          "line": 101,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3303,
      "end": 3304,
      "loc": {
        "start": {
          "line": 101,
          "column": 31
        },
        "end": {
          "line": 101,
          "column": 32
        }
      }
    },
    {
      "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": 3304,
      "end": 3308,
      "loc": {
        "start": {
          "line": 101,
          "column": 32
        },
        "end": {
          "line": 101,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3308,
      "end": 3309,
      "loc": {
        "start": {
          "line": 101,
          "column": 36
        },
        "end": {
          "line": 101,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 3309,
      "end": 3311,
      "loc": {
        "start": {
          "line": 101,
          "column": 37
        },
        "end": {
          "line": 101,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 3312,
      "end": 3314,
      "loc": {
        "start": {
          "line": 101,
          "column": 40
        },
        "end": {
          "line": 101,
          "column": 42
        }
      }
    },
    {
      "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": 3315,
      "end": 3319,
      "loc": {
        "start": {
          "line": 101,
          "column": 43
        },
        "end": {
          "line": 101,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3319,
      "end": 3320,
      "loc": {
        "start": {
          "line": 101,
          "column": 47
        },
        "end": {
          "line": 101,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 3320,
      "end": 3326,
      "loc": {
        "start": {
          "line": 101,
          "column": 48
        },
        "end": {
          "line": 101,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3326,
      "end": 3327,
      "loc": {
        "start": {
          "line": 101,
          "column": 54
        },
        "end": {
          "line": 101,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 3327,
      "end": 3336,
      "loc": {
        "start": {
          "line": 101,
          "column": 55
        },
        "end": {
          "line": 101,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3336,
      "end": 3337,
      "loc": {
        "start": {
          "line": 101,
          "column": 64
        },
        "end": {
          "line": 101,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3338,
      "end": 3339,
      "loc": {
        "start": {
          "line": 101,
          "column": 66
        },
        "end": {
          "line": 101,
          "column": 67
        }
      }
    },
    {
      "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": 3340,
      "end": 3344,
      "loc": {
        "start": {
          "line": 101,
          "column": 68
        },
        "end": {
          "line": 101,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3344,
      "end": 3345,
      "loc": {
        "start": {
          "line": 101,
          "column": 72
        },
        "end": {
          "line": 101,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 3345,
      "end": 3351,
      "loc": {
        "start": {
          "line": 101,
          "column": 73
        },
        "end": {
          "line": 101,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3351,
      "end": 3352,
      "loc": {
        "start": {
          "line": 101,
          "column": 79
        },
        "end": {
          "line": 101,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 3352,
      "end": 3361,
      "loc": {
        "start": {
          "line": 101,
          "column": 80
        },
        "end": {
          "line": 101,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3366,
      "end": 3367,
      "loc": {
        "start": {
          "line": 102,
          "column": 4
        },
        "end": {
          "line": 102,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3367,
      "end": 3368,
      "loc": {
        "start": {
          "line": 102,
          "column": 5
        },
        "end": {
          "line": 102,
          "column": 6
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * If self association, this is the target association - Unless we find a pairing association\n    ",
      "start": 3374,
      "end": 3480,
      "loc": {
        "start": {
          "line": 104,
          "column": 4
        },
        "end": {
          "line": 106,
          "column": 6
        }
      }
    },
    {
      "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": 3485,
      "end": 3487,
      "loc": {
        "start": {
          "line": 107,
          "column": 4
        },
        "end": {
          "line": 107,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3488,
      "end": 3489,
      "loc": {
        "start": {
          "line": 107,
          "column": 7
        },
        "end": {
          "line": 107,
          "column": 8
        }
      }
    },
    {
      "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": 3489,
      "end": 3493,
      "loc": {
        "start": {
          "line": 107,
          "column": 8
        },
        "end": {
          "line": 107,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3493,
      "end": 3494,
      "loc": {
        "start": {
          "line": 107,
          "column": 12
        },
        "end": {
          "line": 107,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isSelfAssociation",
      "start": 3494,
      "end": 3511,
      "loc": {
        "start": {
          "line": 107,
          "column": 13
        },
        "end": {
          "line": 107,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3511,
      "end": 3512,
      "loc": {
        "start": {
          "line": 107,
          "column": 30
        },
        "end": {
          "line": 107,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3513,
      "end": 3514,
      "loc": {
        "start": {
          "line": 107,
          "column": 32
        },
        "end": {
          "line": 107,
          "column": 33
        }
      }
    },
    {
      "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": 3521,
      "end": 3525,
      "loc": {
        "start": {
          "line": 108,
          "column": 6
        },
        "end": {
          "line": 108,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3525,
      "end": 3526,
      "loc": {
        "start": {
          "line": 108,
          "column": 10
        },
        "end": {
          "line": 108,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAssociation",
      "start": 3526,
      "end": 3543,
      "loc": {
        "start": {
          "line": 108,
          "column": 11
        },
        "end": {
          "line": 108,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3544,
      "end": 3545,
      "loc": {
        "start": {
          "line": 108,
          "column": 29
        },
        "end": {
          "line": 108,
          "column": 30
        }
      }
    },
    {
      "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": 3546,
      "end": 3550,
      "loc": {
        "start": {
          "line": 108,
          "column": 31
        },
        "end": {
          "line": 108,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3550,
      "end": 3551,
      "loc": {
        "start": {
          "line": 108,
          "column": 35
        },
        "end": {
          "line": 108,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3556,
      "end": 3557,
      "loc": {
        "start": {
          "line": 109,
          "column": 4
        },
        "end": {
          "line": 109,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * Default/generated foreign/other keys\n    ",
      "start": 3563,
      "end": 3615,
      "loc": {
        "start": {
          "line": 111,
          "column": 4
        },
        "end": {
          "line": 113,
          "column": 6
        }
      }
    },
    {
      "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": 3620,
      "end": 3622,
      "loc": {
        "start": {
          "line": 114,
          "column": 4
        },
        "end": {
          "line": 114,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3623,
      "end": 3624,
      "loc": {
        "start": {
          "line": 114,
          "column": 7
        },
        "end": {
          "line": 114,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 3624,
      "end": 3625,
      "loc": {
        "start": {
          "line": 114,
          "column": 8
        },
        "end": {
          "line": 114,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3625,
      "end": 3626,
      "loc": {
        "start": {
          "line": 114,
          "column": 9
        },
        "end": {
          "line": 114,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isObject",
      "start": 3626,
      "end": 3634,
      "loc": {
        "start": {
          "line": 114,
          "column": 10
        },
        "end": {
          "line": 114,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3634,
      "end": 3635,
      "loc": {
        "start": {
          "line": 114,
          "column": 18
        },
        "end": {
          "line": 114,
          "column": 19
        }
      }
    },
    {
      "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": 3635,
      "end": 3639,
      "loc": {
        "start": {
          "line": 114,
          "column": 19
        },
        "end": {
          "line": 114,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3639,
      "end": 3640,
      "loc": {
        "start": {
          "line": 114,
          "column": 23
        },
        "end": {
          "line": 114,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3640,
      "end": 3647,
      "loc": {
        "start": {
          "line": 114,
          "column": 24
        },
        "end": {
          "line": 114,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3647,
      "end": 3648,
      "loc": {
        "start": {
          "line": 114,
          "column": 31
        },
        "end": {
          "line": 114,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3648,
      "end": 3658,
      "loc": {
        "start": {
          "line": 114,
          "column": 32
        },
        "end": {
          "line": 114,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3658,
      "end": 3659,
      "loc": {
        "start": {
          "line": 114,
          "column": 42
        },
        "end": {
          "line": 114,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3659,
      "end": 3660,
      "loc": {
        "start": {
          "line": 114,
          "column": 43
        },
        "end": {
          "line": 114,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3661,
      "end": 3662,
      "loc": {
        "start": {
          "line": 114,
          "column": 45
        },
        "end": {
          "line": 114,
          "column": 46
        }
      }
    },
    {
      "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": 3669,
      "end": 3673,
      "loc": {
        "start": {
          "line": 115,
          "column": 6
        },
        "end": {
          "line": 115,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3673,
      "end": 3674,
      "loc": {
        "start": {
          "line": 115,
          "column": 10
        },
        "end": {
          "line": 115,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyAttribute",
      "start": 3674,
      "end": 3693,
      "loc": {
        "start": {
          "line": 115,
          "column": 11
        },
        "end": {
          "line": 115,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3694,
      "end": 3695,
      "loc": {
        "start": {
          "line": 115,
          "column": 31
        },
        "end": {
          "line": 115,
          "column": 32
        }
      }
    },
    {
      "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": 3696,
      "end": 3700,
      "loc": {
        "start": {
          "line": 115,
          "column": 33
        },
        "end": {
          "line": 115,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3700,
      "end": 3701,
      "loc": {
        "start": {
          "line": 115,
          "column": 37
        },
        "end": {
          "line": 115,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3701,
      "end": 3708,
      "loc": {
        "start": {
          "line": 115,
          "column": 38
        },
        "end": {
          "line": 115,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3708,
      "end": 3709,
      "loc": {
        "start": {
          "line": 115,
          "column": 45
        },
        "end": {
          "line": 115,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3709,
      "end": 3719,
      "loc": {
        "start": {
          "line": 115,
          "column": 46
        },
        "end": {
          "line": 115,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3719,
      "end": 3720,
      "loc": {
        "start": {
          "line": 115,
          "column": 56
        },
        "end": {
          "line": 115,
          "column": 57
        }
      }
    },
    {
      "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": 3727,
      "end": 3731,
      "loc": {
        "start": {
          "line": 116,
          "column": 6
        },
        "end": {
          "line": 116,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3731,
      "end": 3732,
      "loc": {
        "start": {
          "line": 116,
          "column": 10
        },
        "end": {
          "line": 116,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3732,
      "end": 3742,
      "loc": {
        "start": {
          "line": 116,
          "column": 11
        },
        "end": {
          "line": 116,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3743,
      "end": 3744,
      "loc": {
        "start": {
          "line": 116,
          "column": 22
        },
        "end": {
          "line": 116,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3745,
      "end": 3749,
      "loc": {
        "start": {
          "line": 116,
          "column": 24
        },
        "end": {
          "line": 116,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3749,
      "end": 3750,
      "loc": {
        "start": {
          "line": 116,
          "column": 28
        },
        "end": {
          "line": 116,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyAttribute",
      "start": 3750,
      "end": 3769,
      "loc": {
        "start": {
          "line": 116,
          "column": 29
        },
        "end": {
          "line": 116,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3769,
      "end": 3770,
      "loc": {
        "start": {
          "line": 116,
          "column": 48
        },
        "end": {
          "line": 116,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 3770,
      "end": 3774,
      "loc": {
        "start": {
          "line": 116,
          "column": 49
        },
        "end": {
          "line": 116,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 3775,
      "end": 3777,
      "loc": {
        "start": {
          "line": 116,
          "column": 54
        },
        "end": {
          "line": 116,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3778,
      "end": 3782,
      "loc": {
        "start": {
          "line": 116,
          "column": 57
        },
        "end": {
          "line": 116,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3782,
      "end": 3783,
      "loc": {
        "start": {
          "line": 116,
          "column": 61
        },
        "end": {
          "line": 116,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyAttribute",
      "start": 3783,
      "end": 3802,
      "loc": {
        "start": {
          "line": 116,
          "column": 62
        },
        "end": {
          "line": 116,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3802,
      "end": 3803,
      "loc": {
        "start": {
          "line": 116,
          "column": 81
        },
        "end": {
          "line": 116,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fieldName",
      "start": 3803,
      "end": 3812,
      "loc": {
        "start": {
          "line": 116,
          "column": 82
        },
        "end": {
          "line": 116,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3812,
      "end": 3813,
      "loc": {
        "start": {
          "line": 116,
          "column": 91
        },
        "end": {
          "line": 116,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3818,
      "end": 3819,
      "loc": {
        "start": {
          "line": 117,
          "column": 4
        },
        "end": {
          "line": 117,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 3820,
      "end": 3824,
      "loc": {
        "start": {
          "line": 117,
          "column": 6
        },
        "end": {
          "line": 117,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3825,
      "end": 3826,
      "loc": {
        "start": {
          "line": 117,
          "column": 11
        },
        "end": {
          "line": 117,
          "column": 12
        }
      }
    },
    {
      "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": 3833,
      "end": 3835,
      "loc": {
        "start": {
          "line": 118,
          "column": 6
        },
        "end": {
          "line": 118,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3836,
      "end": 3837,
      "loc": {
        "start": {
          "line": 118,
          "column": 9
        },
        "end": {
          "line": 118,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 3837,
      "end": 3838,
      "loc": {
        "start": {
          "line": 118,
          "column": 10
        },
        "end": {
          "line": 118,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3838,
      "end": 3842,
      "loc": {
        "start": {
          "line": 118,
          "column": 11
        },
        "end": {
          "line": 118,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3842,
      "end": 3843,
      "loc": {
        "start": {
          "line": 118,
          "column": 15
        },
        "end": {
          "line": 118,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3843,
      "end": 3850,
      "loc": {
        "start": {
          "line": 118,
          "column": 16
        },
        "end": {
          "line": 118,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3850,
      "end": 3851,
      "loc": {
        "start": {
          "line": 118,
          "column": 23
        },
        "end": {
          "line": 118,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3851,
      "end": 3861,
      "loc": {
        "start": {
          "line": 118,
          "column": 24
        },
        "end": {
          "line": 118,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3861,
      "end": 3862,
      "loc": {
        "start": {
          "line": 118,
          "column": 34
        },
        "end": {
          "line": 118,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3863,
      "end": 3864,
      "loc": {
        "start": {
          "line": 118,
          "column": 36
        },
        "end": {
          "line": 118,
          "column": 37
        }
      }
    },
    {
      "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": 3873,
      "end": 3877,
      "loc": {
        "start": {
          "line": 119,
          "column": 8
        },
        "end": {
          "line": 119,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3877,
      "end": 3878,
      "loc": {
        "start": {
          "line": 119,
          "column": 12
        },
        "end": {
          "line": 119,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyDefault",
      "start": 3878,
      "end": 3895,
      "loc": {
        "start": {
          "line": 119,
          "column": 13
        },
        "end": {
          "line": 119,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3896,
      "end": 3897,
      "loc": {
        "start": {
          "line": 119,
          "column": 31
        },
        "end": {
          "line": 119,
          "column": 32
        }
      }
    },
    {
      "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": 3898,
      "end": 3902,
      "loc": {
        "start": {
          "line": 119,
          "column": 33
        },
        "end": {
          "line": 119,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3902,
      "end": 3903,
      "loc": {
        "start": {
          "line": 119,
          "column": 37
        },
        "end": {
          "line": 119,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3910,
      "end": 3911,
      "loc": {
        "start": {
          "line": 120,
          "column": 6
        },
        "end": {
          "line": 120,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3919,
      "end": 3923,
      "loc": {
        "start": {
          "line": 122,
          "column": 6
        },
        "end": {
          "line": 122,
          "column": 10
        }
      }
    },
    {
      "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": 122,
          "column": 10
        },
        "end": {
          "line": 122,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyAttribute",
      "start": 3924,
      "end": 3943,
      "loc": {
        "start": {
          "line": 122,
          "column": 11
        },
        "end": {
          "line": 122,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3944,
      "end": 3945,
      "loc": {
        "start": {
          "line": 122,
          "column": 31
        },
        "end": {
          "line": 122,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3946,
      "end": 3947,
      "loc": {
        "start": {
          "line": 122,
          "column": 33
        },
        "end": {
          "line": 122,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 3947,
      "end": 3948,
      "loc": {
        "start": {
          "line": 122,
          "column": 34
        },
        "end": {
          "line": 122,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3948,
      "end": 3949,
      "loc": {
        "start": {
          "line": 122,
          "column": 35
        },
        "end": {
          "line": 122,
          "column": 36
        }
      }
    },
    {
      "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": 3956,
      "end": 3960,
      "loc": {
        "start": {
          "line": 123,
          "column": 6
        },
        "end": {
          "line": 123,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3960,
      "end": 3961,
      "loc": {
        "start": {
          "line": 123,
          "column": 10
        },
        "end": {
          "line": 123,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3961,
      "end": 3971,
      "loc": {
        "start": {
          "line": 123,
          "column": 11
        },
        "end": {
          "line": 123,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 3972,
      "end": 3973,
      "loc": {
        "start": {
          "line": 123,
          "column": 22
        },
        "end": {
          "line": 123,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 3974,
      "end": 3978,
      "loc": {
        "start": {
          "line": 123,
          "column": 24
        },
        "end": {
          "line": 123,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3978,
      "end": 3979,
      "loc": {
        "start": {
          "line": 123,
          "column": 28
        },
        "end": {
          "line": 123,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 3979,
      "end": 3986,
      "loc": {
        "start": {
          "line": 123,
          "column": 29
        },
        "end": {
          "line": 123,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 3986,
      "end": 3987,
      "loc": {
        "start": {
          "line": 123,
          "column": 36
        },
        "end": {
          "line": 123,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 3987,
      "end": 3997,
      "loc": {
        "start": {
          "line": 123,
          "column": 37
        },
        "end": {
          "line": 123,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 3998,
      "end": 4000,
      "loc": {
        "start": {
          "line": 123,
          "column": 48
        },
        "end": {
          "line": 123,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 4001,
      "end": 4006,
      "loc": {
        "start": {
          "line": 123,
          "column": 51
        },
        "end": {
          "line": 123,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4006,
      "end": 4007,
      "loc": {
        "start": {
          "line": 123,
          "column": 56
        },
        "end": {
          "line": 123,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "camelizeIf",
      "start": 4007,
      "end": 4017,
      "loc": {
        "start": {
          "line": 123,
          "column": 57
        },
        "end": {
          "line": 123,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4017,
      "end": 4018,
      "loc": {
        "start": {
          "line": 123,
          "column": 67
        },
        "end": {
          "line": 123,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4027,
      "end": 4028,
      "loc": {
        "start": {
          "line": 124,
          "column": 8
        },
        "end": {
          "line": 124,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 4039,
      "end": 4044,
      "loc": {
        "start": {
          "line": 125,
          "column": 10
        },
        "end": {
          "line": 125,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4044,
      "end": 4045,
      "loc": {
        "start": {
          "line": 125,
          "column": 15
        },
        "end": {
          "line": 125,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscoredIf",
      "start": 4045,
      "end": 4058,
      "loc": {
        "start": {
          "line": 125,
          "column": 16
        },
        "end": {
          "line": 125,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4058,
      "end": 4059,
      "loc": {
        "start": {
          "line": 125,
          "column": 29
        },
        "end": {
          "line": 125,
          "column": 30
        }
      }
    },
    {
      "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": 4059,
      "end": 4063,
      "loc": {
        "start": {
          "line": 125,
          "column": 30
        },
        "end": {
          "line": 125,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4063,
      "end": 4064,
      "loc": {
        "start": {
          "line": 125,
          "column": 34
        },
        "end": {
          "line": 125,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 4064,
      "end": 4070,
      "loc": {
        "start": {
          "line": 125,
          "column": 35
        },
        "end": {
          "line": 125,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4070,
      "end": 4071,
      "loc": {
        "start": {
          "line": 125,
          "column": 41
        },
        "end": {
          "line": 125,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4071,
      "end": 4078,
      "loc": {
        "start": {
          "line": 125,
          "column": 42
        },
        "end": {
          "line": 125,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4078,
      "end": 4079,
      "loc": {
        "start": {
          "line": 125,
          "column": 49
        },
        "end": {
          "line": 125,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 4079,
      "end": 4083,
      "loc": {
        "start": {
          "line": 125,
          "column": 50
        },
        "end": {
          "line": 125,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4083,
      "end": 4084,
      "loc": {
        "start": {
          "line": 125,
          "column": 54
        },
        "end": {
          "line": 125,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 4084,
      "end": 4092,
      "loc": {
        "start": {
          "line": 125,
          "column": 55
        },
        "end": {
          "line": 125,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4092,
      "end": 4093,
      "loc": {
        "start": {
          "line": 125,
          "column": 63
        },
        "end": {
          "line": 125,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4094,
      "end": 4098,
      "loc": {
        "start": {
          "line": 125,
          "column": 65
        },
        "end": {
          "line": 125,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4098,
      "end": 4099,
      "loc": {
        "start": {
          "line": 125,
          "column": 69
        },
        "end": {
          "line": 125,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 4099,
      "end": 4105,
      "loc": {
        "start": {
          "line": 125,
          "column": 70
        },
        "end": {
          "line": 125,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4105,
      "end": 4106,
      "loc": {
        "start": {
          "line": 125,
          "column": 76
        },
        "end": {
          "line": 125,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4106,
      "end": 4113,
      "loc": {
        "start": {
          "line": 125,
          "column": 77
        },
        "end": {
          "line": 125,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4113,
      "end": 4114,
      "loc": {
        "start": {
          "line": 125,
          "column": 84
        },
        "end": {
          "line": 125,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscored",
      "start": 4114,
      "end": 4125,
      "loc": {
        "start": {
          "line": 125,
          "column": 85
        },
        "end": {
          "line": 125,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4125,
      "end": 4126,
      "loc": {
        "start": {
          "line": 125,
          "column": 96
        },
        "end": {
          "line": 125,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4126,
      "end": 4127,
      "loc": {
        "start": {
          "line": 125,
          "column": 97
        },
        "end": {
          "line": 125,
          "column": 98
        }
      }
    },
    {
      "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": 4138,
      "end": 4142,
      "loc": {
        "start": {
          "line": 126,
          "column": 10
        },
        "end": {
          "line": 126,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4142,
      "end": 4143,
      "loc": {
        "start": {
          "line": 126,
          "column": 14
        },
        "end": {
          "line": 126,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 4143,
      "end": 4149,
      "loc": {
        "start": {
          "line": 126,
          "column": 15
        },
        "end": {
          "line": 126,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4149,
      "end": 4150,
      "loc": {
        "start": {
          "line": 126,
          "column": 21
        },
        "end": {
          "line": 126,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 4150,
      "end": 4169,
      "loc": {
        "start": {
          "line": 126,
          "column": 22
        },
        "end": {
          "line": 126,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4178,
      "end": 4179,
      "loc": {
        "start": {
          "line": 127,
          "column": 8
        },
        "end": {
          "line": 127,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4179,
      "end": 4180,
      "loc": {
        "start": {
          "line": 127,
          "column": 9
        },
        "end": {
          "line": 127,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "join",
      "start": 4180,
      "end": 4184,
      "loc": {
        "start": {
          "line": 127,
          "column": 10
        },
        "end": {
          "line": 127,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4184,
      "end": 4185,
      "loc": {
        "start": {
          "line": 127,
          "column": 14
        },
        "end": {
          "line": 127,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "_",
      "start": 4185,
      "end": 4188,
      "loc": {
        "start": {
          "line": 127,
          "column": 15
        },
        "end": {
          "line": 127,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4188,
      "end": 4189,
      "loc": {
        "start": {
          "line": 127,
          "column": 18
        },
        "end": {
          "line": 127,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4189,
      "end": 4190,
      "loc": {
        "start": {
          "line": 127,
          "column": 19
        },
        "end": {
          "line": 127,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4199,
      "end": 4200,
      "loc": {
        "start": {
          "line": 128,
          "column": 8
        },
        "end": {
          "line": 128,
          "column": 9
        }
      }
    },
    {
      "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": 4200,
      "end": 4204,
      "loc": {
        "start": {
          "line": 128,
          "column": 9
        },
        "end": {
          "line": 128,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4204,
      "end": 4205,
      "loc": {
        "start": {
          "line": 128,
          "column": 13
        },
        "end": {
          "line": 128,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 4205,
      "end": 4211,
      "loc": {
        "start": {
          "line": 128,
          "column": 14
        },
        "end": {
          "line": 128,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4211,
      "end": 4212,
      "loc": {
        "start": {
          "line": 128,
          "column": 20
        },
        "end": {
          "line": 128,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4212,
      "end": 4219,
      "loc": {
        "start": {
          "line": 128,
          "column": 21
        },
        "end": {
          "line": 128,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4219,
      "end": 4220,
      "loc": {
        "start": {
          "line": 128,
          "column": 28
        },
        "end": {
          "line": 128,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscored",
      "start": 4220,
      "end": 4231,
      "loc": {
        "start": {
          "line": 128,
          "column": 29
        },
        "end": {
          "line": 128,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4238,
      "end": 4239,
      "loc": {
        "start": {
          "line": 129,
          "column": 6
        },
        "end": {
          "line": 129,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4239,
      "end": 4240,
      "loc": {
        "start": {
          "line": 129,
          "column": 7
        },
        "end": {
          "line": 129,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4245,
      "end": 4246,
      "loc": {
        "start": {
          "line": 130,
          "column": 4
        },
        "end": {
          "line": 130,
          "column": 5
        }
      }
    },
    {
      "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": 4252,
      "end": 4254,
      "loc": {
        "start": {
          "line": 132,
          "column": 4
        },
        "end": {
          "line": 132,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4255,
      "end": 4256,
      "loc": {
        "start": {
          "line": 132,
          "column": 7
        },
        "end": {
          "line": 132,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 4256,
      "end": 4257,
      "loc": {
        "start": {
          "line": 132,
          "column": 8
        },
        "end": {
          "line": 132,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4257,
      "end": 4258,
      "loc": {
        "start": {
          "line": 132,
          "column": 9
        },
        "end": {
          "line": 132,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isObject",
      "start": 4258,
      "end": 4266,
      "loc": {
        "start": {
          "line": 132,
          "column": 10
        },
        "end": {
          "line": 132,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4266,
      "end": 4267,
      "loc": {
        "start": {
          "line": 132,
          "column": 18
        },
        "end": {
          "line": 132,
          "column": 19
        }
      }
    },
    {
      "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": 4267,
      "end": 4271,
      "loc": {
        "start": {
          "line": 132,
          "column": 19
        },
        "end": {
          "line": 132,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4271,
      "end": 4272,
      "loc": {
        "start": {
          "line": 132,
          "column": 23
        },
        "end": {
          "line": 132,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4272,
      "end": 4279,
      "loc": {
        "start": {
          "line": 132,
          "column": 24
        },
        "end": {
          "line": 132,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4279,
      "end": 4280,
      "loc": {
        "start": {
          "line": 132,
          "column": 31
        },
        "end": {
          "line": 132,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4280,
      "end": 4288,
      "loc": {
        "start": {
          "line": 132,
          "column": 32
        },
        "end": {
          "line": 132,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4288,
      "end": 4289,
      "loc": {
        "start": {
          "line": 132,
          "column": 40
        },
        "end": {
          "line": 132,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4289,
      "end": 4290,
      "loc": {
        "start": {
          "line": 132,
          "column": 41
        },
        "end": {
          "line": 132,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4291,
      "end": 4292,
      "loc": {
        "start": {
          "line": 132,
          "column": 43
        },
        "end": {
          "line": 132,
          "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": 4299,
      "end": 4303,
      "loc": {
        "start": {
          "line": 133,
          "column": 6
        },
        "end": {
          "line": 133,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4303,
      "end": 4304,
      "loc": {
        "start": {
          "line": 133,
          "column": 10
        },
        "end": {
          "line": 133,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyAttribute",
      "start": 4304,
      "end": 4321,
      "loc": {
        "start": {
          "line": 133,
          "column": 11
        },
        "end": {
          "line": 133,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4322,
      "end": 4323,
      "loc": {
        "start": {
          "line": 133,
          "column": 29
        },
        "end": {
          "line": 133,
          "column": 30
        }
      }
    },
    {
      "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": 4324,
      "end": 4328,
      "loc": {
        "start": {
          "line": 133,
          "column": 31
        },
        "end": {
          "line": 133,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4328,
      "end": 4329,
      "loc": {
        "start": {
          "line": 133,
          "column": 35
        },
        "end": {
          "line": 133,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4329,
      "end": 4336,
      "loc": {
        "start": {
          "line": 133,
          "column": 36
        },
        "end": {
          "line": 133,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4336,
      "end": 4337,
      "loc": {
        "start": {
          "line": 133,
          "column": 43
        },
        "end": {
          "line": 133,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4337,
      "end": 4345,
      "loc": {
        "start": {
          "line": 133,
          "column": 44
        },
        "end": {
          "line": 133,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4345,
      "end": 4346,
      "loc": {
        "start": {
          "line": 133,
          "column": 52
        },
        "end": {
          "line": 133,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4353,
      "end": 4357,
      "loc": {
        "start": {
          "line": 134,
          "column": 6
        },
        "end": {
          "line": 134,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4357,
      "end": 4358,
      "loc": {
        "start": {
          "line": 134,
          "column": 10
        },
        "end": {
          "line": 134,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4358,
      "end": 4366,
      "loc": {
        "start": {
          "line": 134,
          "column": 11
        },
        "end": {
          "line": 134,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4367,
      "end": 4368,
      "loc": {
        "start": {
          "line": 134,
          "column": 20
        },
        "end": {
          "line": 134,
          "column": 21
        }
      }
    },
    {
      "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": 4369,
      "end": 4373,
      "loc": {
        "start": {
          "line": 134,
          "column": 22
        },
        "end": {
          "line": 134,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4373,
      "end": 4374,
      "loc": {
        "start": {
          "line": 134,
          "column": 26
        },
        "end": {
          "line": 134,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyAttribute",
      "start": 4374,
      "end": 4391,
      "loc": {
        "start": {
          "line": 134,
          "column": 27
        },
        "end": {
          "line": 134,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4391,
      "end": 4392,
      "loc": {
        "start": {
          "line": 134,
          "column": 44
        },
        "end": {
          "line": 134,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 4392,
      "end": 4396,
      "loc": {
        "start": {
          "line": 134,
          "column": 45
        },
        "end": {
          "line": 134,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 4397,
      "end": 4399,
      "loc": {
        "start": {
          "line": 134,
          "column": 50
        },
        "end": {
          "line": 134,
          "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": 4400,
      "end": 4404,
      "loc": {
        "start": {
          "line": 134,
          "column": 53
        },
        "end": {
          "line": 134,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4404,
      "end": 4405,
      "loc": {
        "start": {
          "line": 134,
          "column": 57
        },
        "end": {
          "line": 134,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyAttribute",
      "start": 4405,
      "end": 4422,
      "loc": {
        "start": {
          "line": 134,
          "column": 58
        },
        "end": {
          "line": 134,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4422,
      "end": 4423,
      "loc": {
        "start": {
          "line": 134,
          "column": 75
        },
        "end": {
          "line": 134,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fieldName",
      "start": 4423,
      "end": 4432,
      "loc": {
        "start": {
          "line": 134,
          "column": 76
        },
        "end": {
          "line": 134,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4432,
      "end": 4433,
      "loc": {
        "start": {
          "line": 134,
          "column": 85
        },
        "end": {
          "line": 134,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4438,
      "end": 4439,
      "loc": {
        "start": {
          "line": 135,
          "column": 4
        },
        "end": {
          "line": 135,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 4440,
      "end": 4444,
      "loc": {
        "start": {
          "line": 135,
          "column": 6
        },
        "end": {
          "line": 135,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4445,
      "end": 4446,
      "loc": {
        "start": {
          "line": 135,
          "column": 11
        },
        "end": {
          "line": 135,
          "column": 12
        }
      }
    },
    {
      "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": 4453,
      "end": 4455,
      "loc": {
        "start": {
          "line": 136,
          "column": 6
        },
        "end": {
          "line": 136,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4456,
      "end": 4457,
      "loc": {
        "start": {
          "line": 136,
          "column": 9
        },
        "end": {
          "line": 136,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4457,
      "end": 4458,
      "loc": {
        "start": {
          "line": 136,
          "column": 10
        },
        "end": {
          "line": 136,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4458,
      "end": 4462,
      "loc": {
        "start": {
          "line": 136,
          "column": 11
        },
        "end": {
          "line": 136,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4462,
      "end": 4463,
      "loc": {
        "start": {
          "line": 136,
          "column": 15
        },
        "end": {
          "line": 136,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4463,
      "end": 4470,
      "loc": {
        "start": {
          "line": 136,
          "column": 16
        },
        "end": {
          "line": 136,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4470,
      "end": 4471,
      "loc": {
        "start": {
          "line": 136,
          "column": 23
        },
        "end": {
          "line": 136,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4471,
      "end": 4479,
      "loc": {
        "start": {
          "line": 136,
          "column": 24
        },
        "end": {
          "line": 136,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4479,
      "end": 4480,
      "loc": {
        "start": {
          "line": 136,
          "column": 32
        },
        "end": {
          "line": 136,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4481,
      "end": 4482,
      "loc": {
        "start": {
          "line": 136,
          "column": 34
        },
        "end": {
          "line": 136,
          "column": 35
        }
      }
    },
    {
      "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": 4491,
      "end": 4495,
      "loc": {
        "start": {
          "line": 137,
          "column": 8
        },
        "end": {
          "line": 137,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4495,
      "end": 4496,
      "loc": {
        "start": {
          "line": 137,
          "column": 12
        },
        "end": {
          "line": 137,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyDefault",
      "start": 4496,
      "end": 4511,
      "loc": {
        "start": {
          "line": 137,
          "column": 13
        },
        "end": {
          "line": 137,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4512,
      "end": 4513,
      "loc": {
        "start": {
          "line": 137,
          "column": 29
        },
        "end": {
          "line": 137,
          "column": 30
        }
      }
    },
    {
      "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": 4514,
      "end": 4518,
      "loc": {
        "start": {
          "line": 137,
          "column": 31
        },
        "end": {
          "line": 137,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4518,
      "end": 4519,
      "loc": {
        "start": {
          "line": 137,
          "column": 35
        },
        "end": {
          "line": 137,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4526,
      "end": 4527,
      "loc": {
        "start": {
          "line": 138,
          "column": 6
        },
        "end": {
          "line": 138,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 4535,
      "end": 4539,
      "loc": {
        "start": {
          "line": 140,
          "column": 6
        },
        "end": {
          "line": 140,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4539,
      "end": 4540,
      "loc": {
        "start": {
          "line": 140,
          "column": 10
        },
        "end": {
          "line": 140,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyAttribute",
      "start": 4540,
      "end": 4557,
      "loc": {
        "start": {
          "line": 140,
          "column": 11
        },
        "end": {
          "line": 140,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4558,
      "end": 4559,
      "loc": {
        "start": {
          "line": 140,
          "column": 29
        },
        "end": {
          "line": 140,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4560,
      "end": 4561,
      "loc": {
        "start": {
          "line": 140,
          "column": 31
        },
        "end": {
          "line": 140,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4561,
      "end": 4562,
      "loc": {
        "start": {
          "line": 140,
          "column": 32
        },
        "end": {
          "line": 140,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4562,
      "end": 4563,
      "loc": {
        "start": {
          "line": 140,
          "column": 33
        },
        "end": {
          "line": 140,
          "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": 4570,
      "end": 4574,
      "loc": {
        "start": {
          "line": 141,
          "column": 6
        },
        "end": {
          "line": 141,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4574,
      "end": 4575,
      "loc": {
        "start": {
          "line": 141,
          "column": 10
        },
        "end": {
          "line": 141,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4575,
      "end": 4583,
      "loc": {
        "start": {
          "line": 141,
          "column": 11
        },
        "end": {
          "line": 141,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 4584,
      "end": 4585,
      "loc": {
        "start": {
          "line": 141,
          "column": 20
        },
        "end": {
          "line": 141,
          "column": 21
        }
      }
    },
    {
      "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": 4586,
      "end": 4590,
      "loc": {
        "start": {
          "line": 141,
          "column": 22
        },
        "end": {
          "line": 141,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4590,
      "end": 4591,
      "loc": {
        "start": {
          "line": 141,
          "column": 26
        },
        "end": {
          "line": 141,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4591,
      "end": 4598,
      "loc": {
        "start": {
          "line": 141,
          "column": 27
        },
        "end": {
          "line": 141,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4598,
      "end": 4599,
      "loc": {
        "start": {
          "line": 141,
          "column": 34
        },
        "end": {
          "line": 141,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 4599,
      "end": 4607,
      "loc": {
        "start": {
          "line": 141,
          "column": 35
        },
        "end": {
          "line": 141,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 4608,
      "end": 4610,
      "loc": {
        "start": {
          "line": 141,
          "column": 44
        },
        "end": {
          "line": 141,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 4611,
      "end": 4616,
      "loc": {
        "start": {
          "line": 141,
          "column": 47
        },
        "end": {
          "line": 141,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4616,
      "end": 4617,
      "loc": {
        "start": {
          "line": 141,
          "column": 52
        },
        "end": {
          "line": 141,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "camelizeIf",
      "start": 4617,
      "end": 4627,
      "loc": {
        "start": {
          "line": 141,
          "column": 53
        },
        "end": {
          "line": 141,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4627,
      "end": 4628,
      "loc": {
        "start": {
          "line": 141,
          "column": 63
        },
        "end": {
          "line": 141,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4637,
      "end": 4638,
      "loc": {
        "start": {
          "line": 142,
          "column": 8
        },
        "end": {
          "line": 142,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 4649,
      "end": 4654,
      "loc": {
        "start": {
          "line": 143,
          "column": 10
        },
        "end": {
          "line": 143,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4654,
      "end": 4655,
      "loc": {
        "start": {
          "line": 143,
          "column": 15
        },
        "end": {
          "line": 143,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscoredIf",
      "start": 4655,
      "end": 4668,
      "loc": {
        "start": {
          "line": 143,
          "column": 16
        },
        "end": {
          "line": 143,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4668,
      "end": 4669,
      "loc": {
        "start": {
          "line": 143,
          "column": 29
        },
        "end": {
          "line": 143,
          "column": 30
        }
      }
    },
    {
      "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": 4682,
      "end": 4686,
      "loc": {
        "start": {
          "line": 144,
          "column": 12
        },
        "end": {
          "line": 144,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4686,
      "end": 4687,
      "loc": {
        "start": {
          "line": 144,
          "column": 16
        },
        "end": {
          "line": 144,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isSelfAssociation",
      "start": 4687,
      "end": 4704,
      "loc": {
        "start": {
          "line": 144,
          "column": 17
        },
        "end": {
          "line": 144,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4705,
      "end": 4706,
      "loc": {
        "start": {
          "line": 144,
          "column": 35
        },
        "end": {
          "line": 144,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 4721,
      "end": 4726,
      "loc": {
        "start": {
          "line": 145,
          "column": 14
        },
        "end": {
          "line": 145,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4726,
      "end": 4727,
      "loc": {
        "start": {
          "line": 145,
          "column": 19
        },
        "end": {
          "line": 145,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singularize",
      "start": 4727,
      "end": 4738,
      "loc": {
        "start": {
          "line": 145,
          "column": 20
        },
        "end": {
          "line": 145,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4738,
      "end": 4739,
      "loc": {
        "start": {
          "line": 145,
          "column": 31
        },
        "end": {
          "line": 145,
          "column": 32
        }
      }
    },
    {
      "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": 4739,
      "end": 4743,
      "loc": {
        "start": {
          "line": 145,
          "column": 32
        },
        "end": {
          "line": 145,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4743,
      "end": 4744,
      "loc": {
        "start": {
          "line": 145,
          "column": 36
        },
        "end": {
          "line": 145,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 4744,
      "end": 4746,
      "loc": {
        "start": {
          "line": 145,
          "column": 37
        },
        "end": {
          "line": 145,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4746,
      "end": 4747,
      "loc": {
        "start": {
          "line": 145,
          "column": 39
        },
        "end": {
          "line": 145,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4748,
      "end": 4749,
      "loc": {
        "start": {
          "line": 145,
          "column": 41
        },
        "end": {
          "line": 145,
          "column": 42
        }
      }
    },
    {
      "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": 4764,
      "end": 4768,
      "loc": {
        "start": {
          "line": 146,
          "column": 14
        },
        "end": {
          "line": 146,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4768,
      "end": 4769,
      "loc": {
        "start": {
          "line": 146,
          "column": 18
        },
        "end": {
          "line": 146,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 4769,
      "end": 4775,
      "loc": {
        "start": {
          "line": 146,
          "column": 19
        },
        "end": {
          "line": 146,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4775,
      "end": 4776,
      "loc": {
        "start": {
          "line": 146,
          "column": 25
        },
        "end": {
          "line": 146,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4776,
      "end": 4783,
      "loc": {
        "start": {
          "line": 146,
          "column": 26
        },
        "end": {
          "line": 146,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4783,
      "end": 4784,
      "loc": {
        "start": {
          "line": 146,
          "column": 33
        },
        "end": {
          "line": 146,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 4784,
      "end": 4788,
      "loc": {
        "start": {
          "line": 146,
          "column": 34
        },
        "end": {
          "line": 146,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4788,
      "end": 4789,
      "loc": {
        "start": {
          "line": 146,
          "column": 38
        },
        "end": {
          "line": 146,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 4789,
      "end": 4797,
      "loc": {
        "start": {
          "line": 146,
          "column": 39
        },
        "end": {
          "line": 146,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4797,
      "end": 4798,
      "loc": {
        "start": {
          "line": 146,
          "column": 47
        },
        "end": {
          "line": 146,
          "column": 48
        }
      }
    },
    {
      "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": 4811,
      "end": 4815,
      "loc": {
        "start": {
          "line": 147,
          "column": 12
        },
        "end": {
          "line": 147,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4815,
      "end": 4816,
      "loc": {
        "start": {
          "line": 147,
          "column": 16
        },
        "end": {
          "line": 147,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 4816,
      "end": 4822,
      "loc": {
        "start": {
          "line": 147,
          "column": 17
        },
        "end": {
          "line": 147,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4822,
      "end": 4823,
      "loc": {
        "start": {
          "line": 147,
          "column": 23
        },
        "end": {
          "line": 147,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4823,
      "end": 4830,
      "loc": {
        "start": {
          "line": 147,
          "column": 24
        },
        "end": {
          "line": 147,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4830,
      "end": 4831,
      "loc": {
        "start": {
          "line": 147,
          "column": 31
        },
        "end": {
          "line": 147,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscored",
      "start": 4831,
      "end": 4842,
      "loc": {
        "start": {
          "line": 147,
          "column": 32
        },
        "end": {
          "line": 147,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4853,
      "end": 4854,
      "loc": {
        "start": {
          "line": 148,
          "column": 10
        },
        "end": {
          "line": 148,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4854,
      "end": 4855,
      "loc": {
        "start": {
          "line": 148,
          "column": 11
        },
        "end": {
          "line": 148,
          "column": 12
        }
      }
    },
    {
      "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": 4866,
      "end": 4870,
      "loc": {
        "start": {
          "line": 149,
          "column": 10
        },
        "end": {
          "line": 149,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4870,
      "end": 4871,
      "loc": {
        "start": {
          "line": 149,
          "column": 14
        },
        "end": {
          "line": 149,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 4871,
      "end": 4877,
      "loc": {
        "start": {
          "line": 149,
          "column": 15
        },
        "end": {
          "line": 149,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4877,
      "end": 4878,
      "loc": {
        "start": {
          "line": 149,
          "column": 21
        },
        "end": {
          "line": 149,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 4878,
      "end": 4897,
      "loc": {
        "start": {
          "line": 149,
          "column": 22
        },
        "end": {
          "line": 149,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4906,
      "end": 4907,
      "loc": {
        "start": {
          "line": 150,
          "column": 8
        },
        "end": {
          "line": 150,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4907,
      "end": 4908,
      "loc": {
        "start": {
          "line": 150,
          "column": 9
        },
        "end": {
          "line": 150,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "join",
      "start": 4908,
      "end": 4912,
      "loc": {
        "start": {
          "line": 150,
          "column": 10
        },
        "end": {
          "line": 150,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4912,
      "end": 4913,
      "loc": {
        "start": {
          "line": 150,
          "column": 14
        },
        "end": {
          "line": 150,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "_",
      "start": 4913,
      "end": 4916,
      "loc": {
        "start": {
          "line": 150,
          "column": 15
        },
        "end": {
          "line": 150,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4916,
      "end": 4917,
      "loc": {
        "start": {
          "line": 150,
          "column": 18
        },
        "end": {
          "line": 150,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4917,
      "end": 4918,
      "loc": {
        "start": {
          "line": 150,
          "column": 19
        },
        "end": {
          "line": 150,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 4927,
      "end": 4928,
      "loc": {
        "start": {
          "line": 151,
          "column": 8
        },
        "end": {
          "line": 151,
          "column": 9
        }
      }
    },
    {
      "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": 4928,
      "end": 4932,
      "loc": {
        "start": {
          "line": 151,
          "column": 9
        },
        "end": {
          "line": 151,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4932,
      "end": 4933,
      "loc": {
        "start": {
          "line": 151,
          "column": 13
        },
        "end": {
          "line": 151,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 4933,
      "end": 4939,
      "loc": {
        "start": {
          "line": 151,
          "column": 14
        },
        "end": {
          "line": 151,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4939,
      "end": 4940,
      "loc": {
        "start": {
          "line": 151,
          "column": 20
        },
        "end": {
          "line": 151,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 4940,
      "end": 4947,
      "loc": {
        "start": {
          "line": 151,
          "column": 21
        },
        "end": {
          "line": 151,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4947,
      "end": 4948,
      "loc": {
        "start": {
          "line": 151,
          "column": 28
        },
        "end": {
          "line": 151,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "underscored",
      "start": 4948,
      "end": 4959,
      "loc": {
        "start": {
          "line": 151,
          "column": 29
        },
        "end": {
          "line": 151,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4966,
      "end": 4967,
      "loc": {
        "start": {
          "line": 152,
          "column": 6
        },
        "end": {
          "line": 152,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 4967,
      "end": 4968,
      "loc": {
        "start": {
          "line": 152,
          "column": 7
        },
        "end": {
          "line": 152,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 4973,
      "end": 4974,
      "loc": {
        "start": {
          "line": 153,
          "column": 4
        },
        "end": {
          "line": 153,
          "column": 5
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "\n    * Find paired association (if exists)\n    ",
      "start": 4980,
      "end": 5031,
      "loc": {
        "start": {
          "line": 155,
          "column": 4
        },
        "end": {
          "line": 157,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 5036,
      "end": 5037,
      "loc": {
        "start": {
          "line": 158,
          "column": 4
        },
        "end": {
          "line": 158,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5037,
      "end": 5038,
      "loc": {
        "start": {
          "line": 158,
          "column": 5
        },
        "end": {
          "line": 158,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "each",
      "start": 5038,
      "end": 5042,
      "loc": {
        "start": {
          "line": 158,
          "column": 6
        },
        "end": {
          "line": 158,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5042,
      "end": 5043,
      "loc": {
        "start": {
          "line": 158,
          "column": 10
        },
        "end": {
          "line": 158,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5043,
      "end": 5047,
      "loc": {
        "start": {
          "line": 158,
          "column": 11
        },
        "end": {
          "line": 158,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5047,
      "end": 5048,
      "loc": {
        "start": {
          "line": 158,
          "column": 15
        },
        "end": {
          "line": 158,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 5048,
      "end": 5054,
      "loc": {
        "start": {
          "line": 158,
          "column": 16
        },
        "end": {
          "line": 158,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5054,
      "end": 5055,
      "loc": {
        "start": {
          "line": 158,
          "column": 22
        },
        "end": {
          "line": 158,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "associations",
      "start": 5055,
      "end": 5067,
      "loc": {
        "start": {
          "line": 158,
          "column": 23
        },
        "end": {
          "line": 158,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5067,
      "end": 5068,
      "loc": {
        "start": {
          "line": 158,
          "column": 35
        },
        "end": {
          "line": 158,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5069,
      "end": 5080,
      "loc": {
        "start": {
          "line": 158,
          "column": 37
        },
        "end": {
          "line": 158,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5081,
      "end": 5083,
      "loc": {
        "start": {
          "line": 158,
          "column": 49
        },
        "end": {
          "line": 158,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5084,
      "end": 5085,
      "loc": {
        "start": {
          "line": 158,
          "column": 52
        },
        "end": {
          "line": 158,
          "column": 53
        }
      }
    },
    {
      "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": 5092,
      "end": 5094,
      "loc": {
        "start": {
          "line": 159,
          "column": 6
        },
        "end": {
          "line": 159,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5095,
      "end": 5096,
      "loc": {
        "start": {
          "line": 159,
          "column": 9
        },
        "end": {
          "line": 159,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5096,
      "end": 5107,
      "loc": {
        "start": {
          "line": 159,
          "column": 10
        },
        "end": {
          "line": 159,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5107,
      "end": 5108,
      "loc": {
        "start": {
          "line": 159,
          "column": 21
        },
        "end": {
          "line": 159,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "associationType",
      "start": 5108,
      "end": 5123,
      "loc": {
        "start": {
          "line": 159,
          "column": 22
        },
        "end": {
          "line": 159,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 5124,
      "end": 5127,
      "loc": {
        "start": {
          "line": 159,
          "column": 38
        },
        "end": {
          "line": 159,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "BelongsToMany",
      "start": 5128,
      "end": 5143,
      "loc": {
        "start": {
          "line": 159,
          "column": 42
        },
        "end": {
          "line": 159,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5143,
      "end": 5144,
      "loc": {
        "start": {
          "line": 159,
          "column": 57
        },
        "end": {
          "line": 159,
          "column": 58
        }
      }
    },
    {
      "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": 5145,
      "end": 5151,
      "loc": {
        "start": {
          "line": 159,
          "column": 59
        },
        "end": {
          "line": 159,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5151,
      "end": 5152,
      "loc": {
        "start": {
          "line": 159,
          "column": 65
        },
        "end": {
          "line": 159,
          "column": 66
        }
      }
    },
    {
      "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": 5159,
      "end": 5161,
      "loc": {
        "start": {
          "line": 160,
          "column": 6
        },
        "end": {
          "line": 160,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5162,
      "end": 5163,
      "loc": {
        "start": {
          "line": 160,
          "column": 9
        },
        "end": {
          "line": 160,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5163,
      "end": 5174,
      "loc": {
        "start": {
          "line": 160,
          "column": 10
        },
        "end": {
          "line": 160,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5174,
      "end": 5175,
      "loc": {
        "start": {
          "line": 160,
          "column": 21
        },
        "end": {
          "line": 160,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 5175,
      "end": 5181,
      "loc": {
        "start": {
          "line": 160,
          "column": 22
        },
        "end": {
          "line": 160,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 5182,
      "end": 5185,
      "loc": {
        "start": {
          "line": 160,
          "column": 29
        },
        "end": {
          "line": 160,
          "column": 32
        }
      }
    },
    {
      "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": 5186,
      "end": 5190,
      "loc": {
        "start": {
          "line": 160,
          "column": 33
        },
        "end": {
          "line": 160,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5190,
      "end": 5191,
      "loc": {
        "start": {
          "line": 160,
          "column": 37
        },
        "end": {
          "line": 160,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 5191,
      "end": 5197,
      "loc": {
        "start": {
          "line": 160,
          "column": 38
        },
        "end": {
          "line": 160,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5197,
      "end": 5198,
      "loc": {
        "start": {
          "line": 160,
          "column": 44
        },
        "end": {
          "line": 160,
          "column": 45
        }
      }
    },
    {
      "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": 5199,
      "end": 5205,
      "loc": {
        "start": {
          "line": 160,
          "column": 46
        },
        "end": {
          "line": 160,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5205,
      "end": 5206,
      "loc": {
        "start": {
          "line": 160,
          "column": 52
        },
        "end": {
          "line": 160,
          "column": 53
        }
      }
    },
    {
      "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": 5214,
      "end": 5216,
      "loc": {
        "start": {
          "line": 162,
          "column": 6
        },
        "end": {
          "line": 162,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5217,
      "end": 5218,
      "loc": {
        "start": {
          "line": 162,
          "column": 9
        },
        "end": {
          "line": 162,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5218,
      "end": 5222,
      "loc": {
        "start": {
          "line": 162,
          "column": 10
        },
        "end": {
          "line": 162,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5222,
      "end": 5223,
      "loc": {
        "start": {
          "line": 162,
          "column": 14
        },
        "end": {
          "line": 162,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 5223,
      "end": 5230,
      "loc": {
        "start": {
          "line": 162,
          "column": 15
        },
        "end": {
          "line": 162,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5230,
      "end": 5231,
      "loc": {
        "start": {
          "line": 162,
          "column": 22
        },
        "end": {
          "line": 162,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5231,
      "end": 5238,
      "loc": {
        "start": {
          "line": 162,
          "column": 23
        },
        "end": {
          "line": 162,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5238,
      "end": 5239,
      "loc": {
        "start": {
          "line": 162,
          "column": 30
        },
        "end": {
          "line": 162,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5239,
      "end": 5244,
      "loc": {
        "start": {
          "line": 162,
          "column": 31
        },
        "end": {
          "line": 162,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5245,
      "end": 5248,
      "loc": {
        "start": {
          "line": 162,
          "column": 37
        },
        "end": {
          "line": 162,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5249,
      "end": 5260,
      "loc": {
        "start": {
          "line": 162,
          "column": 41
        },
        "end": {
          "line": 162,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5260,
      "end": 5261,
      "loc": {
        "start": {
          "line": 162,
          "column": 52
        },
        "end": {
          "line": 162,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 5261,
      "end": 5268,
      "loc": {
        "start": {
          "line": 162,
          "column": 53
        },
        "end": {
          "line": 162,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5268,
      "end": 5269,
      "loc": {
        "start": {
          "line": 162,
          "column": 60
        },
        "end": {
          "line": 162,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5269,
      "end": 5276,
      "loc": {
        "start": {
          "line": 162,
          "column": 61
        },
        "end": {
          "line": 162,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5276,
      "end": 5277,
      "loc": {
        "start": {
          "line": 162,
          "column": 68
        },
        "end": {
          "line": 162,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5277,
      "end": 5282,
      "loc": {
        "start": {
          "line": 162,
          "column": 69
        },
        "end": {
          "line": 162,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5282,
      "end": 5283,
      "loc": {
        "start": {
          "line": 162,
          "column": 74
        },
        "end": {
          "line": 162,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5284,
      "end": 5285,
      "loc": {
        "start": {
          "line": 162,
          "column": 76
        },
        "end": {
          "line": 162,
          "column": 77
        }
      }
    },
    {
      "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": 5294,
      "end": 5298,
      "loc": {
        "start": {
          "line": 163,
          "column": 8
        },
        "end": {
          "line": 163,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5298,
      "end": 5299,
      "loc": {
        "start": {
          "line": 163,
          "column": 12
        },
        "end": {
          "line": 163,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 5299,
      "end": 5305,
      "loc": {
        "start": {
          "line": 163,
          "column": 13
        },
        "end": {
          "line": 163,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5306,
      "end": 5307,
      "loc": {
        "start": {
          "line": 163,
          "column": 20
        },
        "end": {
          "line": 163,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5308,
      "end": 5319,
      "loc": {
        "start": {
          "line": 163,
          "column": 22
        },
        "end": {
          "line": 163,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5319,
      "end": 5320,
      "loc": {
        "start": {
          "line": 163,
          "column": 33
        },
        "end": {
          "line": 163,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 5329,
      "end": 5340,
      "loc": {
        "start": {
          "line": 164,
          "column": 8
        },
        "end": {
          "line": 164,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5340,
      "end": 5341,
      "loc": {
        "start": {
          "line": 164,
          "column": 19
        },
        "end": {
          "line": 164,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 5341,
      "end": 5347,
      "loc": {
        "start": {
          "line": 164,
          "column": 20
        },
        "end": {
          "line": 164,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5348,
      "end": 5349,
      "loc": {
        "start": {
          "line": 164,
          "column": 27
        },
        "end": {
          "line": 164,
          "column": 28
        }
      }
    },
    {
      "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": 5350,
      "end": 5354,
      "loc": {
        "start": {
          "line": 164,
          "column": 29
        },
        "end": {
          "line": 164,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5354,
      "end": 5355,
      "loc": {
        "start": {
          "line": 164,
          "column": 33
        },
        "end": {
          "line": 164,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5362,
      "end": 5363,
      "loc": {
        "start": {
          "line": 165,
          "column": 6
        },
        "end": {
          "line": 165,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5368,
      "end": 5369,
      "loc": {
        "start": {
          "line": 166,
          "column": 4
        },
        "end": {
          "line": 166,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5369,
      "end": 5370,
      "loc": {
        "start": {
          "line": 166,
          "column": 5
        },
        "end": {
          "line": 166,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5370,
      "end": 5371,
      "loc": {
        "start": {
          "line": 166,
          "column": 6
        },
        "end": {
          "line": 166,
          "column": 7
        }
      }
    },
    {
      "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": 5377,
      "end": 5379,
      "loc": {
        "start": {
          "line": 168,
          "column": 4
        },
        "end": {
          "line": 168,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5380,
      "end": 5381,
      "loc": {
        "start": {
          "line": 168,
          "column": 7
        },
        "end": {
          "line": 168,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "typeof",
        "keyword": "typeof",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "typeof",
      "start": 5381,
      "end": 5387,
      "loc": {
        "start": {
          "line": 168,
          "column": 8
        },
        "end": {
          "line": 168,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5388,
      "end": 5392,
      "loc": {
        "start": {
          "line": 168,
          "column": 15
        },
        "end": {
          "line": 168,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5392,
      "end": 5393,
      "loc": {
        "start": {
          "line": 168,
          "column": 19
        },
        "end": {
          "line": 168,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5393,
      "end": 5400,
      "loc": {
        "start": {
          "line": 168,
          "column": 20
        },
        "end": {
          "line": 168,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5400,
      "end": 5401,
      "loc": {
        "start": {
          "line": 168,
          "column": 27
        },
        "end": {
          "line": 168,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5401,
      "end": 5406,
      "loc": {
        "start": {
          "line": 168,
          "column": 28
        },
        "end": {
          "line": 168,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 5407,
      "end": 5410,
      "loc": {
        "start": {
          "line": 168,
          "column": 34
        },
        "end": {
          "line": 168,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "string",
      "start": 5411,
      "end": 5419,
      "loc": {
        "start": {
          "line": 168,
          "column": 38
        },
        "end": {
          "line": 168,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5419,
      "end": 5420,
      "loc": {
        "start": {
          "line": 168,
          "column": 46
        },
        "end": {
          "line": 168,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5421,
      "end": 5422,
      "loc": {
        "start": {
          "line": 168,
          "column": 48
        },
        "end": {
          "line": 168,
          "column": 49
        }
      }
    },
    {
      "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": 5429,
      "end": 5431,
      "loc": {
        "start": {
          "line": 169,
          "column": 6
        },
        "end": {
          "line": 169,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5432,
      "end": 5433,
      "loc": {
        "start": {
          "line": 169,
          "column": 9
        },
        "end": {
          "line": 169,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 5433,
      "end": 5434,
      "loc": {
        "start": {
          "line": 169,
          "column": 10
        },
        "end": {
          "line": 169,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5434,
      "end": 5438,
      "loc": {
        "start": {
          "line": 169,
          "column": 11
        },
        "end": {
          "line": 169,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5438,
      "end": 5439,
      "loc": {
        "start": {
          "line": 169,
          "column": 15
        },
        "end": {
          "line": 169,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 5439,
      "end": 5448,
      "loc": {
        "start": {
          "line": 169,
          "column": 16
        },
        "end": {
          "line": 169,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5448,
      "end": 5449,
      "loc": {
        "start": {
          "line": 169,
          "column": 25
        },
        "end": {
          "line": 169,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isDefined",
      "start": 5449,
      "end": 5458,
      "loc": {
        "start": {
          "line": 169,
          "column": 26
        },
        "end": {
          "line": 169,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5458,
      "end": 5459,
      "loc": {
        "start": {
          "line": 169,
          "column": 35
        },
        "end": {
          "line": 169,
          "column": 36
        }
      }
    },
    {
      "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": 5459,
      "end": 5463,
      "loc": {
        "start": {
          "line": 169,
          "column": 36
        },
        "end": {
          "line": 169,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5463,
      "end": 5464,
      "loc": {
        "start": {
          "line": 169,
          "column": 40
        },
        "end": {
          "line": 169,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5464,
      "end": 5471,
      "loc": {
        "start": {
          "line": 169,
          "column": 41
        },
        "end": {
          "line": 169,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5471,
      "end": 5472,
      "loc": {
        "start": {
          "line": 169,
          "column": 48
        },
        "end": {
          "line": 169,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5472,
      "end": 5477,
      "loc": {
        "start": {
          "line": 169,
          "column": 49
        },
        "end": {
          "line": 169,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5477,
      "end": 5478,
      "loc": {
        "start": {
          "line": 169,
          "column": 54
        },
        "end": {
          "line": 169,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5478,
      "end": 5479,
      "loc": {
        "start": {
          "line": 169,
          "column": 55
        },
        "end": {
          "line": 169,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5480,
      "end": 5481,
      "loc": {
        "start": {
          "line": 169,
          "column": 57
        },
        "end": {
          "line": 169,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5490,
      "end": 5494,
      "loc": {
        "start": {
          "line": 170,
          "column": 8
        },
        "end": {
          "line": 170,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5494,
      "end": 5495,
      "loc": {
        "start": {
          "line": 170,
          "column": 12
        },
        "end": {
          "line": 170,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5495,
      "end": 5502,
      "loc": {
        "start": {
          "line": 170,
          "column": 13
        },
        "end": {
          "line": 170,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5502,
      "end": 5503,
      "loc": {
        "start": {
          "line": 170,
          "column": 20
        },
        "end": {
          "line": 170,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5503,
      "end": 5508,
      "loc": {
        "start": {
          "line": 170,
          "column": 21
        },
        "end": {
          "line": 170,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5509,
      "end": 5510,
      "loc": {
        "start": {
          "line": 170,
          "column": 27
        },
        "end": {
          "line": 170,
          "column": 28
        }
      }
    },
    {
      "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": 5511,
      "end": 5515,
      "loc": {
        "start": {
          "line": 170,
          "column": 29
        },
        "end": {
          "line": 170,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5515,
      "end": 5516,
      "loc": {
        "start": {
          "line": 170,
          "column": 33
        },
        "end": {
          "line": 170,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 5516,
      "end": 5525,
      "loc": {
        "start": {
          "line": 170,
          "column": 34
        },
        "end": {
          "line": 170,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5525,
      "end": 5526,
      "loc": {
        "start": {
          "line": 170,
          "column": 43
        },
        "end": {
          "line": 170,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "define",
      "start": 5526,
      "end": 5532,
      "loc": {
        "start": {
          "line": 170,
          "column": 44
        },
        "end": {
          "line": 170,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5532,
      "end": 5533,
      "loc": {
        "start": {
          "line": 170,
          "column": 50
        },
        "end": {
          "line": 170,
          "column": 51
        }
      }
    },
    {
      "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": 5533,
      "end": 5537,
      "loc": {
        "start": {
          "line": 170,
          "column": 51
        },
        "end": {
          "line": 170,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5537,
      "end": 5538,
      "loc": {
        "start": {
          "line": 170,
          "column": 55
        },
        "end": {
          "line": 170,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5538,
      "end": 5545,
      "loc": {
        "start": {
          "line": 170,
          "column": 56
        },
        "end": {
          "line": 170,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5545,
      "end": 5546,
      "loc": {
        "start": {
          "line": 170,
          "column": 63
        },
        "end": {
          "line": 170,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5546,
      "end": 5551,
      "loc": {
        "start": {
          "line": 170,
          "column": 64
        },
        "end": {
          "line": 170,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5551,
      "end": 5552,
      "loc": {
        "start": {
          "line": 170,
          "column": 69
        },
        "end": {
          "line": 170,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5553,
      "end": 5554,
      "loc": {
        "start": {
          "line": 170,
          "column": 71
        },
        "end": {
          "line": 170,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5554,
      "end": 5555,
      "loc": {
        "start": {
          "line": 170,
          "column": 72
        },
        "end": {
          "line": 170,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5555,
      "end": 5556,
      "loc": {
        "start": {
          "line": 170,
          "column": 73
        },
        "end": {
          "line": 170,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 5557,
      "end": 5558,
      "loc": {
        "start": {
          "line": 170,
          "column": 75
        },
        "end": {
          "line": 170,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5558,
      "end": 5559,
      "loc": {
        "start": {
          "line": 170,
          "column": 76
        },
        "end": {
          "line": 170,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "extend",
      "start": 5559,
      "end": 5565,
      "loc": {
        "start": {
          "line": 170,
          "column": 77
        },
        "end": {
          "line": 170,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5565,
      "end": 5566,
      "loc": {
        "start": {
          "line": 170,
          "column": 83
        },
        "end": {
          "line": 170,
          "column": 84
        }
      }
    },
    {
      "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": 5566,
      "end": 5570,
      "loc": {
        "start": {
          "line": 170,
          "column": 84
        },
        "end": {
          "line": 170,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5570,
      "end": 5571,
      "loc": {
        "start": {
          "line": 170,
          "column": 88
        },
        "end": {
          "line": 170,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 5571,
      "end": 5578,
      "loc": {
        "start": {
          "line": 170,
          "column": 89
        },
        "end": {
          "line": 170,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5578,
      "end": 5579,
      "loc": {
        "start": {
          "line": 170,
          "column": 96
        },
        "end": {
          "line": 170,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5580,
      "end": 5581,
      "loc": {
        "start": {
          "line": 170,
          "column": 98
        },
        "end": {
          "line": 170,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 5592,
      "end": 5601,
      "loc": {
        "start": {
          "line": 171,
          "column": 10
        },
        "end": {
          "line": 171,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5601,
      "end": 5602,
      "loc": {
        "start": {
          "line": 171,
          "column": 19
        },
        "end": {
          "line": 171,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5603,
      "end": 5607,
      "loc": {
        "start": {
          "line": 171,
          "column": 21
        },
        "end": {
          "line": 171,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5607,
      "end": 5608,
      "loc": {
        "start": {
          "line": 171,
          "column": 25
        },
        "end": {
          "line": 171,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5608,
      "end": 5615,
      "loc": {
        "start": {
          "line": 171,
          "column": 26
        },
        "end": {
          "line": 171,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5615,
      "end": 5616,
      "loc": {
        "start": {
          "line": 171,
          "column": 33
        },
        "end": {
          "line": 171,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5616,
      "end": 5621,
      "loc": {
        "start": {
          "line": 171,
          "column": 34
        },
        "end": {
          "line": 171,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5621,
      "end": 5622,
      "loc": {
        "start": {
          "line": 171,
          "column": 39
        },
        "end": {
          "line": 171,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "indexes",
      "start": 5633,
      "end": 5640,
      "loc": {
        "start": {
          "line": 172,
          "column": 10
        },
        "end": {
          "line": 172,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5640,
      "end": 5641,
      "loc": {
        "start": {
          "line": 172,
          "column": 17
        },
        "end": {
          "line": 172,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5642,
      "end": 5643,
      "loc": {
        "start": {
          "line": 172,
          "column": 19
        },
        "end": {
          "line": 172,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5643,
      "end": 5644,
      "loc": {
        "start": {
          "line": 172,
          "column": 20
        },
        "end": {
          "line": 172,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5644,
      "end": 5645,
      "loc": {
        "start": {
          "line": 172,
          "column": 21
        },
        "end": {
          "line": 172,
          "column": 22
        }
      }
    },
    {
      "type": "CommentLine",
      "value": "we don't want indexes here (as referenced in #2416)",
      "start": 5646,
      "end": 5699,
      "loc": {
        "start": {
          "line": 172,
          "column": 23
        },
        "end": {
          "line": 172,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paranoid",
      "start": 5710,
      "end": 5718,
      "loc": {
        "start": {
          "line": 173,
          "column": 10
        },
        "end": {
          "line": 173,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5718,
      "end": 5719,
      "loc": {
        "start": {
          "line": 173,
          "column": 18
        },
        "end": {
          "line": 173,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 5720,
      "end": 5725,
      "loc": {
        "start": {
          "line": 173,
          "column": 20
        },
        "end": {
          "line": 173,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5725,
      "end": 5726,
      "loc": {
        "start": {
          "line": 173,
          "column": 25
        },
        "end": {
          "line": 173,
          "column": 26
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " A paranoid join table does not make sense",
      "start": 5728,
      "end": 5772,
      "loc": {
        "start": {
          "line": 173,
          "column": 28
        },
        "end": {
          "line": 173,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "validate",
      "start": 5783,
      "end": 5791,
      "loc": {
        "start": {
          "line": 174,
          "column": 10
        },
        "end": {
          "line": 174,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5791,
      "end": 5792,
      "loc": {
        "start": {
          "line": 174,
          "column": 18
        },
        "end": {
          "line": 174,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5793,
      "end": 5794,
      "loc": {
        "start": {
          "line": 174,
          "column": 20
        },
        "end": {
          "line": 174,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5794,
      "end": 5795,
      "loc": {
        "start": {
          "line": 174,
          "column": 21
        },
        "end": {
          "line": 174,
          "column": 22
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Don't propagate model-level validations",
      "start": 5796,
      "end": 5838,
      "loc": {
        "start": {
          "line": 174,
          "column": 23
        },
        "end": {
          "line": 174,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5847,
      "end": 5848,
      "loc": {
        "start": {
          "line": 175,
          "column": 8
        },
        "end": {
          "line": 175,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5848,
      "end": 5849,
      "loc": {
        "start": {
          "line": 175,
          "column": 9
        },
        "end": {
          "line": 175,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5849,
      "end": 5850,
      "loc": {
        "start": {
          "line": 175,
          "column": 10
        },
        "end": {
          "line": 175,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5850,
      "end": 5851,
      "loc": {
        "start": {
          "line": 175,
          "column": 11
        },
        "end": {
          "line": 175,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5858,
      "end": 5859,
      "loc": {
        "start": {
          "line": 176,
          "column": 6
        },
        "end": {
          "line": 176,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 5860,
      "end": 5864,
      "loc": {
        "start": {
          "line": 176,
          "column": 8
        },
        "end": {
          "line": 176,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5865,
      "end": 5866,
      "loc": {
        "start": {
          "line": 176,
          "column": 13
        },
        "end": {
          "line": 176,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5875,
      "end": 5879,
      "loc": {
        "start": {
          "line": 177,
          "column": 8
        },
        "end": {
          "line": 177,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5879,
      "end": 5880,
      "loc": {
        "start": {
          "line": 177,
          "column": 12
        },
        "end": {
          "line": 177,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5880,
      "end": 5887,
      "loc": {
        "start": {
          "line": 177,
          "column": 13
        },
        "end": {
          "line": 177,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5887,
      "end": 5888,
      "loc": {
        "start": {
          "line": 177,
          "column": 20
        },
        "end": {
          "line": 177,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5888,
      "end": 5893,
      "loc": {
        "start": {
          "line": 177,
          "column": 21
        },
        "end": {
          "line": 177,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5894,
      "end": 5895,
      "loc": {
        "start": {
          "line": 177,
          "column": 27
        },
        "end": {
          "line": 177,
          "column": 28
        }
      }
    },
    {
      "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": 5896,
      "end": 5900,
      "loc": {
        "start": {
          "line": 177,
          "column": 29
        },
        "end": {
          "line": 177,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5900,
      "end": 5901,
      "loc": {
        "start": {
          "line": 177,
          "column": 33
        },
        "end": {
          "line": 177,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 5901,
      "end": 5910,
      "loc": {
        "start": {
          "line": 177,
          "column": 34
        },
        "end": {
          "line": 177,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5910,
      "end": 5911,
      "loc": {
        "start": {
          "line": 177,
          "column": 43
        },
        "end": {
          "line": 177,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5911,
      "end": 5916,
      "loc": {
        "start": {
          "line": 177,
          "column": 44
        },
        "end": {
          "line": 177,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5916,
      "end": 5917,
      "loc": {
        "start": {
          "line": 177,
          "column": 49
        },
        "end": {
          "line": 177,
          "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": 5917,
      "end": 5921,
      "loc": {
        "start": {
          "line": 177,
          "column": 50
        },
        "end": {
          "line": 177,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5921,
      "end": 5922,
      "loc": {
        "start": {
          "line": 177,
          "column": 54
        },
        "end": {
          "line": 177,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 5922,
      "end": 5929,
      "loc": {
        "start": {
          "line": 177,
          "column": 55
        },
        "end": {
          "line": 177,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5929,
      "end": 5930,
      "loc": {
        "start": {
          "line": 177,
          "column": 62
        },
        "end": {
          "line": 177,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 5930,
      "end": 5935,
      "loc": {
        "start": {
          "line": 177,
          "column": 63
        },
        "end": {
          "line": 177,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5935,
      "end": 5936,
      "loc": {
        "start": {
          "line": 177,
          "column": 68
        },
        "end": {
          "line": 177,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5936,
      "end": 5937,
      "loc": {
        "start": {
          "line": 177,
          "column": 69
        },
        "end": {
          "line": 177,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5944,
      "end": 5945,
      "loc": {
        "start": {
          "line": 178,
          "column": 6
        },
        "end": {
          "line": 178,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5950,
      "end": 5951,
      "loc": {
        "start": {
          "line": 179,
          "column": 4
        },
        "end": {
          "line": 179,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 5957,
      "end": 5961,
      "loc": {
        "start": {
          "line": 181,
          "column": 4
        },
        "end": {
          "line": 181,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5961,
      "end": 5962,
      "loc": {
        "start": {
          "line": 181,
          "column": 8
        },
        "end": {
          "line": 181,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 5962,
      "end": 5969,
      "loc": {
        "start": {
          "line": 181,
          "column": 9
        },
        "end": {
          "line": 181,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 5970,
      "end": 5971,
      "loc": {
        "start": {
          "line": 181,
          "column": 17
        },
        "end": {
          "line": 181,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 5972,
      "end": 5978,
      "loc": {
        "start": {
          "line": 181,
          "column": 19
        },
        "end": {
          "line": 181,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5978,
      "end": 5979,
      "loc": {
        "start": {
          "line": 181,
          "column": 25
        },
        "end": {
          "line": 181,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 5979,
      "end": 5985,
      "loc": {
        "start": {
          "line": 181,
          "column": 26
        },
        "end": {
          "line": 181,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 5985,
      "end": 5986,
      "loc": {
        "start": {
          "line": 181,
          "column": 32
        },
        "end": {
          "line": 181,
          "column": 33
        }
      }
    },
    {
      "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": 5986,
      "end": 5990,
      "loc": {
        "start": {
          "line": 181,
          "column": 33
        },
        "end": {
          "line": 181,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5990,
      "end": 5991,
      "loc": {
        "start": {
          "line": 181,
          "column": 37
        },
        "end": {
          "line": 181,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 5991,
      "end": 5998,
      "loc": {
        "start": {
          "line": 181,
          "column": 38
        },
        "end": {
          "line": 181,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 5998,
      "end": 5999,
      "loc": {
        "start": {
          "line": 181,
          "column": 45
        },
        "end": {
          "line": 181,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 6000,
      "end": 6001,
      "loc": {
        "start": {
          "line": 181,
          "column": 47
        },
        "end": {
          "line": 181,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6001,
      "end": 6002,
      "loc": {
        "start": {
          "line": 181,
          "column": 48
        },
        "end": {
          "line": 181,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "pick",
      "start": 6002,
      "end": 6006,
      "loc": {
        "start": {
          "line": 181,
          "column": 49
        },
        "end": {
          "line": 181,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6006,
      "end": 6007,
      "loc": {
        "start": {
          "line": 181,
          "column": 53
        },
        "end": {
          "line": 181,
          "column": 54
        }
      }
    },
    {
      "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": 6007,
      "end": 6011,
      "loc": {
        "start": {
          "line": 181,
          "column": 54
        },
        "end": {
          "line": 181,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6011,
      "end": 6012,
      "loc": {
        "start": {
          "line": 181,
          "column": 58
        },
        "end": {
          "line": 181,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6012,
      "end": 6019,
      "loc": {
        "start": {
          "line": 181,
          "column": 59
        },
        "end": {
          "line": 181,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6019,
      "end": 6020,
      "loc": {
        "start": {
          "line": 181,
          "column": 66
        },
        "end": {
          "line": 181,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6020,
      "end": 6025,
      "loc": {
        "start": {
          "line": 181,
          "column": 67
        },
        "end": {
          "line": 181,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6025,
      "end": 6026,
      "loc": {
        "start": {
          "line": 181,
          "column": 72
        },
        "end": {
          "line": 181,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 6026,
      "end": 6033,
      "loc": {
        "start": {
          "line": 181,
          "column": 73
        },
        "end": {
          "line": 181,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6033,
      "end": 6034,
      "loc": {
        "start": {
          "line": 181,
          "column": 80
        },
        "end": {
          "line": 181,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6035,
      "end": 6036,
      "loc": {
        "start": {
          "line": 181,
          "column": 82
        },
        "end": {
          "line": 181,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "timestamps",
      "start": 6043,
      "end": 6055,
      "loc": {
        "start": {
          "line": 182,
          "column": 6
        },
        "end": {
          "line": 182,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6055,
      "end": 6056,
      "loc": {
        "start": {
          "line": 182,
          "column": 18
        },
        "end": {
          "line": 182,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "createdAt",
      "start": 6057,
      "end": 6068,
      "loc": {
        "start": {
          "line": 182,
          "column": 20
        },
        "end": {
          "line": 182,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6068,
      "end": 6069,
      "loc": {
        "start": {
          "line": 182,
          "column": 31
        },
        "end": {
          "line": 182,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "updatedAt",
      "start": 6070,
      "end": 6081,
      "loc": {
        "start": {
          "line": 182,
          "column": 33
        },
        "end": {
          "line": 182,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6081,
      "end": 6082,
      "loc": {
        "start": {
          "line": 182,
          "column": 44
        },
        "end": {
          "line": 182,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "deletedAt",
      "start": 6083,
      "end": 6094,
      "loc": {
        "start": {
          "line": 182,
          "column": 46
        },
        "end": {
          "line": 182,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6094,
      "end": 6095,
      "loc": {
        "start": {
          "line": 182,
          "column": 57
        },
        "end": {
          "line": 182,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "paranoid",
      "start": 6096,
      "end": 6106,
      "loc": {
        "start": {
          "line": 182,
          "column": 59
        },
        "end": {
          "line": 182,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6111,
      "end": 6112,
      "loc": {
        "start": {
          "line": 183,
          "column": 4
        },
        "end": {
          "line": 183,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6112,
      "end": 6113,
      "loc": {
        "start": {
          "line": 183,
          "column": 5
        },
        "end": {
          "line": 183,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6113,
      "end": 6114,
      "loc": {
        "start": {
          "line": 183,
          "column": 6
        },
        "end": {
          "line": 183,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6114,
      "end": 6115,
      "loc": {
        "start": {
          "line": 183,
          "column": 7
        },
        "end": {
          "line": 183,
          "column": 8
        }
      }
    },
    {
      "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": 6121,
      "end": 6123,
      "loc": {
        "start": {
          "line": 185,
          "column": 4
        },
        "end": {
          "line": 185,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6124,
      "end": 6125,
      "loc": {
        "start": {
          "line": 185,
          "column": 7
        },
        "end": {
          "line": 185,
          "column": 8
        }
      }
    },
    {
      "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": 6125,
      "end": 6129,
      "loc": {
        "start": {
          "line": 185,
          "column": 8
        },
        "end": {
          "line": 185,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6129,
      "end": 6130,
      "loc": {
        "start": {
          "line": 185,
          "column": 12
        },
        "end": {
          "line": 185,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6130,
      "end": 6136,
      "loc": {
        "start": {
          "line": 185,
          "column": 13
        },
        "end": {
          "line": 185,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6136,
      "end": 6137,
      "loc": {
        "start": {
          "line": 185,
          "column": 19
        },
        "end": {
          "line": 185,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6138,
      "end": 6139,
      "loc": {
        "start": {
          "line": 185,
          "column": 21
        },
        "end": {
          "line": 185,
          "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": 6146,
      "end": 6148,
      "loc": {
        "start": {
          "line": 186,
          "column": 6
        },
        "end": {
          "line": 186,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6149,
      "end": 6150,
      "loc": {
        "start": {
          "line": 186,
          "column": 9
        },
        "end": {
          "line": 186,
          "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": 6150,
      "end": 6154,
      "loc": {
        "start": {
          "line": 186,
          "column": 10
        },
        "end": {
          "line": 186,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6154,
      "end": 6155,
      "loc": {
        "start": {
          "line": 186,
          "column": 14
        },
        "end": {
          "line": 186,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyDefault",
      "start": 6155,
      "end": 6170,
      "loc": {
        "start": {
          "line": 186,
          "column": 15
        },
        "end": {
          "line": 186,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6170,
      "end": 6171,
      "loc": {
        "start": {
          "line": 186,
          "column": 30
        },
        "end": {
          "line": 186,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6172,
      "end": 6173,
      "loc": {
        "start": {
          "line": 186,
          "column": 32
        },
        "end": {
          "line": 186,
          "column": 33
        }
      }
    },
    {
      "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": 6182,
      "end": 6186,
      "loc": {
        "start": {
          "line": 187,
          "column": 8
        },
        "end": {
          "line": 187,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6186,
      "end": 6187,
      "loc": {
        "start": {
          "line": 187,
          "column": 12
        },
        "end": {
          "line": 187,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 6187,
      "end": 6195,
      "loc": {
        "start": {
          "line": 187,
          "column": 13
        },
        "end": {
          "line": 187,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6196,
      "end": 6197,
      "loc": {
        "start": {
          "line": 187,
          "column": 22
        },
        "end": {
          "line": 187,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6198,
      "end": 6202,
      "loc": {
        "start": {
          "line": 187,
          "column": 24
        },
        "end": {
          "line": 187,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6202,
      "end": 6203,
      "loc": {
        "start": {
          "line": 187,
          "column": 28
        },
        "end": {
          "line": 187,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6203,
      "end": 6209,
      "loc": {
        "start": {
          "line": 187,
          "column": 29
        },
        "end": {
          "line": 187,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6209,
      "end": 6210,
      "loc": {
        "start": {
          "line": 187,
          "column": 35
        },
        "end": {
          "line": 187,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 6210,
      "end": 6220,
      "loc": {
        "start": {
          "line": 187,
          "column": 36
        },
        "end": {
          "line": 187,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6220,
      "end": 6221,
      "loc": {
        "start": {
          "line": 187,
          "column": 46
        },
        "end": {
          "line": 187,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6228,
      "end": 6229,
      "loc": {
        "start": {
          "line": 188,
          "column": 6
        },
        "end": {
          "line": 188,
          "column": 7
        }
      }
    },
    {
      "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": 6236,
      "end": 6238,
      "loc": {
        "start": {
          "line": 189,
          "column": 6
        },
        "end": {
          "line": 189,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6239,
      "end": 6240,
      "loc": {
        "start": {
          "line": 189,
          "column": 9
        },
        "end": {
          "line": 189,
          "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": 6240,
      "end": 6244,
      "loc": {
        "start": {
          "line": 189,
          "column": 10
        },
        "end": {
          "line": 189,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6244,
      "end": 6245,
      "loc": {
        "start": {
          "line": 189,
          "column": 14
        },
        "end": {
          "line": 189,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6245,
      "end": 6251,
      "loc": {
        "start": {
          "line": 189,
          "column": 15
        },
        "end": {
          "line": 189,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6251,
      "end": 6252,
      "loc": {
        "start": {
          "line": 189,
          "column": 21
        },
        "end": {
          "line": 189,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyDefault",
      "start": 6252,
      "end": 6267,
      "loc": {
        "start": {
          "line": 189,
          "column": 22
        },
        "end": {
          "line": 189,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6267,
      "end": 6268,
      "loc": {
        "start": {
          "line": 189,
          "column": 37
        },
        "end": {
          "line": 189,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6269,
      "end": 6270,
      "loc": {
        "start": {
          "line": 189,
          "column": 39
        },
        "end": {
          "line": 189,
          "column": 40
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " If paired otherKey was inferred we should make sure to clean it up before adding a new one that matches the foreignKey",
      "start": 6279,
      "end": 6400,
      "loc": {
        "start": {
          "line": 190,
          "column": 8
        },
        "end": {
          "line": 190,
          "column": 129
        }
      }
    },
    {
      "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": 6409,
      "end": 6411,
      "loc": {
        "start": {
          "line": 191,
          "column": 8
        },
        "end": {
          "line": 191,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6412,
      "end": 6413,
      "loc": {
        "start": {
          "line": 191,
          "column": 11
        },
        "end": {
          "line": 191,
          "column": 12
        }
      }
    },
    {
      "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": 6413,
      "end": 6417,
      "loc": {
        "start": {
          "line": 191,
          "column": 12
        },
        "end": {
          "line": 191,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6417,
      "end": 6418,
      "loc": {
        "start": {
          "line": 191,
          "column": 16
        },
        "end": {
          "line": 191,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6418,
      "end": 6424,
      "loc": {
        "start": {
          "line": 191,
          "column": 17
        },
        "end": {
          "line": 191,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6424,
      "end": 6425,
      "loc": {
        "start": {
          "line": 191,
          "column": 23
        },
        "end": {
          "line": 191,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 6425,
      "end": 6433,
      "loc": {
        "start": {
          "line": 191,
          "column": 24
        },
        "end": {
          "line": 191,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 6434,
      "end": 6437,
      "loc": {
        "start": {
          "line": 191,
          "column": 33
        },
        "end": {
          "line": 191,
          "column": 36
        }
      }
    },
    {
      "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": 6438,
      "end": 6442,
      "loc": {
        "start": {
          "line": 191,
          "column": 37
        },
        "end": {
          "line": 191,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6442,
      "end": 6443,
      "loc": {
        "start": {
          "line": 191,
          "column": 41
        },
        "end": {
          "line": 191,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 6443,
      "end": 6453,
      "loc": {
        "start": {
          "line": 191,
          "column": 42
        },
        "end": {
          "line": 191,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6453,
      "end": 6454,
      "loc": {
        "start": {
          "line": 191,
          "column": 52
        },
        "end": {
          "line": 191,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6455,
      "end": 6456,
      "loc": {
        "start": {
          "line": 191,
          "column": 54
        },
        "end": {
          "line": 191,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "delete",
        "keyword": "delete",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "delete",
      "start": 6467,
      "end": 6473,
      "loc": {
        "start": {
          "line": 192,
          "column": 10
        },
        "end": {
          "line": 192,
          "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": 6474,
      "end": 6478,
      "loc": {
        "start": {
          "line": 192,
          "column": 17
        },
        "end": {
          "line": 192,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6478,
      "end": 6479,
      "loc": {
        "start": {
          "line": 192,
          "column": 21
        },
        "end": {
          "line": 192,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6479,
      "end": 6486,
      "loc": {
        "start": {
          "line": 192,
          "column": 22
        },
        "end": {
          "line": 192,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6486,
      "end": 6487,
      "loc": {
        "start": {
          "line": 192,
          "column": 29
        },
        "end": {
          "line": 192,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6487,
      "end": 6492,
      "loc": {
        "start": {
          "line": 192,
          "column": 30
        },
        "end": {
          "line": 192,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6492,
      "end": 6493,
      "loc": {
        "start": {
          "line": 192,
          "column": 35
        },
        "end": {
          "line": 192,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 6493,
      "end": 6506,
      "loc": {
        "start": {
          "line": 192,
          "column": 36
        },
        "end": {
          "line": 192,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6506,
      "end": 6507,
      "loc": {
        "start": {
          "line": 192,
          "column": 49
        },
        "end": {
          "line": 192,
          "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": 6507,
      "end": 6511,
      "loc": {
        "start": {
          "line": 192,
          "column": 50
        },
        "end": {
          "line": 192,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6511,
      "end": 6512,
      "loc": {
        "start": {
          "line": 192,
          "column": 54
        },
        "end": {
          "line": 192,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6512,
      "end": 6518,
      "loc": {
        "start": {
          "line": 192,
          "column": 55
        },
        "end": {
          "line": 192,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6518,
      "end": 6519,
      "loc": {
        "start": {
          "line": 192,
          "column": 61
        },
        "end": {
          "line": 192,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 6519,
      "end": 6527,
      "loc": {
        "start": {
          "line": 192,
          "column": 62
        },
        "end": {
          "line": 192,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6527,
      "end": 6528,
      "loc": {
        "start": {
          "line": 192,
          "column": 70
        },
        "end": {
          "line": 192,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6528,
      "end": 6529,
      "loc": {
        "start": {
          "line": 192,
          "column": 71
        },
        "end": {
          "line": 192,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6538,
      "end": 6539,
      "loc": {
        "start": {
          "line": 193,
          "column": 8
        },
        "end": {
          "line": 193,
          "column": 9
        }
      }
    },
    {
      "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": 6548,
      "end": 6552,
      "loc": {
        "start": {
          "line": 194,
          "column": 8
        },
        "end": {
          "line": 194,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6552,
      "end": 6553,
      "loc": {
        "start": {
          "line": 194,
          "column": 12
        },
        "end": {
          "line": 194,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6553,
      "end": 6559,
      "loc": {
        "start": {
          "line": 194,
          "column": 13
        },
        "end": {
          "line": 194,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6559,
      "end": 6560,
      "loc": {
        "start": {
          "line": 194,
          "column": 19
        },
        "end": {
          "line": 194,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 6560,
      "end": 6568,
      "loc": {
        "start": {
          "line": 194,
          "column": 20
        },
        "end": {
          "line": 194,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6569,
      "end": 6570,
      "loc": {
        "start": {
          "line": 194,
          "column": 29
        },
        "end": {
          "line": 194,
          "column": 30
        }
      }
    },
    {
      "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": 6571,
      "end": 6575,
      "loc": {
        "start": {
          "line": 194,
          "column": 31
        },
        "end": {
          "line": 194,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6575,
      "end": 6576,
      "loc": {
        "start": {
          "line": 194,
          "column": 35
        },
        "end": {
          "line": 194,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 6576,
      "end": 6586,
      "loc": {
        "start": {
          "line": 194,
          "column": 36
        },
        "end": {
          "line": 194,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6586,
      "end": 6587,
      "loc": {
        "start": {
          "line": 194,
          "column": 46
        },
        "end": {
          "line": 194,
          "column": 47
        }
      }
    },
    {
      "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": 6596,
      "end": 6600,
      "loc": {
        "start": {
          "line": 195,
          "column": 8
        },
        "end": {
          "line": 195,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6600,
      "end": 6601,
      "loc": {
        "start": {
          "line": 195,
          "column": 12
        },
        "end": {
          "line": 195,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6601,
      "end": 6607,
      "loc": {
        "start": {
          "line": 195,
          "column": 13
        },
        "end": {
          "line": 195,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6607,
      "end": 6608,
      "loc": {
        "start": {
          "line": 195,
          "column": 19
        },
        "end": {
          "line": 195,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 6608,
      "end": 6625,
      "loc": {
        "start": {
          "line": 195,
          "column": 20
        },
        "end": {
          "line": 195,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6626,
      "end": 6627,
      "loc": {
        "start": {
          "line": 195,
          "column": 38
        },
        "end": {
          "line": 195,
          "column": 39
        }
      }
    },
    {
      "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": 6628,
      "end": 6632,
      "loc": {
        "start": {
          "line": 195,
          "column": 40
        },
        "end": {
          "line": 195,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6632,
      "end": 6633,
      "loc": {
        "start": {
          "line": 195,
          "column": 44
        },
        "end": {
          "line": 195,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 6633,
      "end": 6643,
      "loc": {
        "start": {
          "line": 195,
          "column": 45
        },
        "end": {
          "line": 195,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6643,
      "end": 6644,
      "loc": {
        "start": {
          "line": 195,
          "column": 55
        },
        "end": {
          "line": 195,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "delete",
        "keyword": "delete",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "delete",
      "start": 6653,
      "end": 6659,
      "loc": {
        "start": {
          "line": 196,
          "column": 8
        },
        "end": {
          "line": 196,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6660,
      "end": 6664,
      "loc": {
        "start": {
          "line": 196,
          "column": 15
        },
        "end": {
          "line": 196,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6664,
      "end": 6665,
      "loc": {
        "start": {
          "line": 196,
          "column": 19
        },
        "end": {
          "line": 196,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 6665,
      "end": 6671,
      "loc": {
        "start": {
          "line": 196,
          "column": 20
        },
        "end": {
          "line": 196,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6671,
      "end": 6672,
      "loc": {
        "start": {
          "line": 196,
          "column": 26
        },
        "end": {
          "line": 196,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifierField",
      "start": 6672,
      "end": 6694,
      "loc": {
        "start": {
          "line": 196,
          "column": 27
        },
        "end": {
          "line": 196,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6694,
      "end": 6695,
      "loc": {
        "start": {
          "line": 196,
          "column": 49
        },
        "end": {
          "line": 196,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6702,
      "end": 6703,
      "loc": {
        "start": {
          "line": 197,
          "column": 6
        },
        "end": {
          "line": 197,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6708,
      "end": 6709,
      "loc": {
        "start": {
          "line": 198,
          "column": 4
        },
        "end": {
          "line": 198,
          "column": 5
        }
      }
    },
    {
      "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": 6715,
      "end": 6717,
      "loc": {
        "start": {
          "line": 200,
          "column": 4
        },
        "end": {
          "line": 200,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6718,
      "end": 6719,
      "loc": {
        "start": {
          "line": 200,
          "column": 7
        },
        "end": {
          "line": 200,
          "column": 8
        }
      }
    },
    {
      "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": 6719,
      "end": 6723,
      "loc": {
        "start": {
          "line": 200,
          "column": 8
        },
        "end": {
          "line": 200,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6723,
      "end": 6724,
      "loc": {
        "start": {
          "line": 200,
          "column": 12
        },
        "end": {
          "line": 200,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6724,
      "end": 6731,
      "loc": {
        "start": {
          "line": 200,
          "column": 13
        },
        "end": {
          "line": 200,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6731,
      "end": 6732,
      "loc": {
        "start": {
          "line": 200,
          "column": 20
        },
        "end": {
          "line": 200,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6733,
      "end": 6734,
      "loc": {
        "start": {
          "line": 200,
          "column": 22
        },
        "end": {
          "line": 200,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6741,
      "end": 6745,
      "loc": {
        "start": {
          "line": 201,
          "column": 6
        },
        "end": {
          "line": 201,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6745,
      "end": 6746,
      "loc": {
        "start": {
          "line": 201,
          "column": 10
        },
        "end": {
          "line": 201,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughModel",
      "start": 6746,
      "end": 6758,
      "loc": {
        "start": {
          "line": 201,
          "column": 11
        },
        "end": {
          "line": 201,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6759,
      "end": 6760,
      "loc": {
        "start": {
          "line": 201,
          "column": 24
        },
        "end": {
          "line": 201,
          "column": 25
        }
      }
    },
    {
      "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": 6761,
      "end": 6765,
      "loc": {
        "start": {
          "line": 201,
          "column": 26
        },
        "end": {
          "line": 201,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6765,
      "end": 6766,
      "loc": {
        "start": {
          "line": 201,
          "column": 30
        },
        "end": {
          "line": 201,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6766,
      "end": 6773,
      "loc": {
        "start": {
          "line": 201,
          "column": 31
        },
        "end": {
          "line": 201,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6773,
      "end": 6774,
      "loc": {
        "start": {
          "line": 201,
          "column": 38
        },
        "end": {
          "line": 201,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6774,
      "end": 6779,
      "loc": {
        "start": {
          "line": 201,
          "column": 39
        },
        "end": {
          "line": 201,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6779,
      "end": 6780,
      "loc": {
        "start": {
          "line": 201,
          "column": 44
        },
        "end": {
          "line": 201,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6785,
      "end": 6786,
      "loc": {
        "start": {
          "line": 202,
          "column": 4
        },
        "end": {
          "line": 202,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6792,
      "end": 6796,
      "loc": {
        "start": {
          "line": 204,
          "column": 4
        },
        "end": {
          "line": 204,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6796,
      "end": 6797,
      "loc": {
        "start": {
          "line": 204,
          "column": 8
        },
        "end": {
          "line": 204,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 6797,
      "end": 6804,
      "loc": {
        "start": {
          "line": 204,
          "column": 9
        },
        "end": {
          "line": 204,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6804,
      "end": 6805,
      "loc": {
        "start": {
          "line": 204,
          "column": 16
        },
        "end": {
          "line": 204,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 6805,
      "end": 6814,
      "loc": {
        "start": {
          "line": 204,
          "column": 17
        },
        "end": {
          "line": 204,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6815,
      "end": 6816,
      "loc": {
        "start": {
          "line": 204,
          "column": 27
        },
        "end": {
          "line": 204,
          "column": 28
        }
      }
    },
    {
      "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": 6817,
      "end": 6821,
      "loc": {
        "start": {
          "line": 204,
          "column": 29
        },
        "end": {
          "line": 204,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6821,
      "end": 6822,
      "loc": {
        "start": {
          "line": 204,
          "column": 33
        },
        "end": {
          "line": 204,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "combinedName",
      "start": 6822,
      "end": 6834,
      "loc": {
        "start": {
          "line": 204,
          "column": 34
        },
        "end": {
          "line": 204,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6835,
      "end": 6836,
      "loc": {
        "start": {
          "line": 204,
          "column": 47
        },
        "end": {
          "line": 204,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6837,
      "end": 6838,
      "loc": {
        "start": {
          "line": 204,
          "column": 49
        },
        "end": {
          "line": 204,
          "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": 6838,
      "end": 6842,
      "loc": {
        "start": {
          "line": 204,
          "column": 50
        },
        "end": {
          "line": 204,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6842,
      "end": 6843,
      "loc": {
        "start": {
          "line": 204,
          "column": 54
        },
        "end": {
          "line": 204,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6843,
      "end": 6850,
      "loc": {
        "start": {
          "line": 204,
          "column": 55
        },
        "end": {
          "line": 204,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6850,
      "end": 6851,
      "loc": {
        "start": {
          "line": 204,
          "column": 62
        },
        "end": {
          "line": 204,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6851,
      "end": 6856,
      "loc": {
        "start": {
          "line": 204,
          "column": 63
        },
        "end": {
          "line": 204,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 6857,
      "end": 6860,
      "loc": {
        "start": {
          "line": 204,
          "column": 69
        },
        "end": {
          "line": 204,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 6861,
      "end": 6867,
      "loc": {
        "start": {
          "line": 204,
          "column": 73
        },
        "end": {
          "line": 204,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6867,
      "end": 6868,
      "loc": {
        "start": {
          "line": 204,
          "column": 79
        },
        "end": {
          "line": 204,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6868,
      "end": 6872,
      "loc": {
        "start": {
          "line": 204,
          "column": 80
        },
        "end": {
          "line": 204,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6872,
      "end": 6873,
      "loc": {
        "start": {
          "line": 204,
          "column": 84
        },
        "end": {
          "line": 204,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6873,
      "end": 6880,
      "loc": {
        "start": {
          "line": 204,
          "column": 85
        },
        "end": {
          "line": 204,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6880,
      "end": 6881,
      "loc": {
        "start": {
          "line": 204,
          "column": 92
        },
        "end": {
          "line": 204,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6881,
      "end": 6886,
      "loc": {
        "start": {
          "line": 204,
          "column": 93
        },
        "end": {
          "line": 204,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6886,
      "end": 6887,
      "loc": {
        "start": {
          "line": 204,
          "column": 98
        },
        "end": {
          "line": 204,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "?",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6888,
      "end": 6889,
      "loc": {
        "start": {
          "line": 204,
          "column": 100
        },
        "end": {
          "line": 204,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 6890,
      "end": 6894,
      "loc": {
        "start": {
          "line": 204,
          "column": 102
        },
        "end": {
          "line": 204,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6894,
      "end": 6895,
      "loc": {
        "start": {
          "line": 204,
          "column": 106
        },
        "end": {
          "line": 204,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6895,
      "end": 6902,
      "loc": {
        "start": {
          "line": 204,
          "column": 107
        },
        "end": {
          "line": 204,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6902,
      "end": 6903,
      "loc": {
        "start": {
          "line": 204,
          "column": 114
        },
        "end": {
          "line": 204,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6903,
      "end": 6908,
      "loc": {
        "start": {
          "line": 204,
          "column": 115
        },
        "end": {
          "line": 204,
          "column": 120
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6908,
      "end": 6909,
      "loc": {
        "start": {
          "line": 204,
          "column": 120
        },
        "end": {
          "line": 204,
          "column": 121
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 6909,
      "end": 6918,
      "loc": {
        "start": {
          "line": 204,
          "column": 121
        },
        "end": {
          "line": 204,
          "column": 130
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6919,
      "end": 6920,
      "loc": {
        "start": {
          "line": 204,
          "column": 131
        },
        "end": {
          "line": 204,
          "column": 132
        }
      }
    },
    {
      "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": 6921,
      "end": 6925,
      "loc": {
        "start": {
          "line": 204,
          "column": 133
        },
        "end": {
          "line": 204,
          "column": 137
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6925,
      "end": 6926,
      "loc": {
        "start": {
          "line": 204,
          "column": 137
        },
        "end": {
          "line": 204,
          "column": 138
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 6926,
      "end": 6933,
      "loc": {
        "start": {
          "line": 204,
          "column": 138
        },
        "end": {
          "line": 204,
          "column": 145
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6933,
      "end": 6934,
      "loc": {
        "start": {
          "line": 204,
          "column": 145
        },
        "end": {
          "line": 204,
          "column": 146
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 6934,
      "end": 6939,
      "loc": {
        "start": {
          "line": 204,
          "column": 146
        },
        "end": {
          "line": 204,
          "column": 151
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 6939,
      "end": 6940,
      "loc": {
        "start": {
          "line": 204,
          "column": 151
        },
        "end": {
          "line": 204,
          "column": 152
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6940,
      "end": 6941,
      "loc": {
        "start": {
          "line": 204,
          "column": 152
        },
        "end": {
          "line": 204,
          "column": 153
        }
      }
    },
    {
      "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": 6947,
      "end": 6951,
      "loc": {
        "start": {
          "line": 206,
          "column": 4
        },
        "end": {
          "line": 206,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6951,
      "end": 6952,
      "loc": {
        "start": {
          "line": 206,
          "column": 8
        },
        "end": {
          "line": 206,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "associationAccessor",
      "start": 6952,
      "end": 6971,
      "loc": {
        "start": {
          "line": 206,
          "column": 9
        },
        "end": {
          "line": 206,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 6972,
      "end": 6973,
      "loc": {
        "start": {
          "line": 206,
          "column": 29
        },
        "end": {
          "line": 206,
          "column": 30
        }
      }
    },
    {
      "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": 6974,
      "end": 6978,
      "loc": {
        "start": {
          "line": 206,
          "column": 31
        },
        "end": {
          "line": 206,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6978,
      "end": 6979,
      "loc": {
        "start": {
          "line": 206,
          "column": 35
        },
        "end": {
          "line": 206,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 6979,
      "end": 6981,
      "loc": {
        "start": {
          "line": 206,
          "column": 36
        },
        "end": {
          "line": 206,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 6981,
      "end": 6982,
      "loc": {
        "start": {
          "line": 206,
          "column": 38
        },
        "end": {
          "line": 206,
          "column": 39
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Get singular and plural names, trying to uppercase the first letter, unless the model forbids it",
      "start": 6988,
      "end": 7087,
      "loc": {
        "start": {
          "line": 208,
          "column": 4
        },
        "end": {
          "line": 208,
          "column": 103
        }
      }
    },
    {
      "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": 7092,
      "end": 7097,
      "loc": {
        "start": {
          "line": 209,
          "column": 4
        },
        "end": {
          "line": 209,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7098,
      "end": 7104,
      "loc": {
        "start": {
          "line": 209,
          "column": 10
        },
        "end": {
          "line": 209,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7105,
      "end": 7106,
      "loc": {
        "start": {
          "line": 209,
          "column": 17
        },
        "end": {
          "line": 209,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 7107,
      "end": 7112,
      "loc": {
        "start": {
          "line": 209,
          "column": 19
        },
        "end": {
          "line": 209,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7112,
      "end": 7113,
      "loc": {
        "start": {
          "line": 209,
          "column": 24
        },
        "end": {
          "line": 209,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "uppercaseFirst",
      "start": 7113,
      "end": 7127,
      "loc": {
        "start": {
          "line": 209,
          "column": 25
        },
        "end": {
          "line": 209,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7127,
      "end": 7128,
      "loc": {
        "start": {
          "line": 209,
          "column": 39
        },
        "end": {
          "line": 209,
          "column": 40
        }
      }
    },
    {
      "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": 7128,
      "end": 7132,
      "loc": {
        "start": {
          "line": 209,
          "column": 40
        },
        "end": {
          "line": 209,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7132,
      "end": 7133,
      "loc": {
        "start": {
          "line": 209,
          "column": 44
        },
        "end": {
          "line": 209,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 7133,
      "end": 7140,
      "loc": {
        "start": {
          "line": 209,
          "column": 45
        },
        "end": {
          "line": 209,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7140,
      "end": 7141,
      "loc": {
        "start": {
          "line": 209,
          "column": 52
        },
        "end": {
          "line": 209,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 7141,
      "end": 7145,
      "loc": {
        "start": {
          "line": 209,
          "column": 53
        },
        "end": {
          "line": 209,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7145,
      "end": 7146,
      "loc": {
        "start": {
          "line": 209,
          "column": 57
        },
        "end": {
          "line": 209,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7146,
      "end": 7152,
      "loc": {
        "start": {
          "line": 209,
          "column": 58
        },
        "end": {
          "line": 209,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7152,
      "end": 7153,
      "loc": {
        "start": {
          "line": 209,
          "column": 64
        },
        "end": {
          "line": 209,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7153,
      "end": 7154,
      "loc": {
        "start": {
          "line": 209,
          "column": 65
        },
        "end": {
          "line": 209,
          "column": 66
        }
      }
    },
    {
      "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": 7159,
      "end": 7164,
      "loc": {
        "start": {
          "line": 210,
          "column": 4
        },
        "end": {
          "line": 210,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7165,
      "end": 7173,
      "loc": {
        "start": {
          "line": 210,
          "column": 10
        },
        "end": {
          "line": 210,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7174,
      "end": 7175,
      "loc": {
        "start": {
          "line": 210,
          "column": 19
        },
        "end": {
          "line": 210,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 7176,
      "end": 7181,
      "loc": {
        "start": {
          "line": 210,
          "column": 21
        },
        "end": {
          "line": 210,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7181,
      "end": 7182,
      "loc": {
        "start": {
          "line": 210,
          "column": 26
        },
        "end": {
          "line": 210,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "uppercaseFirst",
      "start": 7182,
      "end": 7196,
      "loc": {
        "start": {
          "line": 210,
          "column": 27
        },
        "end": {
          "line": 210,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7196,
      "end": 7197,
      "loc": {
        "start": {
          "line": 210,
          "column": 41
        },
        "end": {
          "line": 210,
          "column": 42
        }
      }
    },
    {
      "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": 7197,
      "end": 7201,
      "loc": {
        "start": {
          "line": 210,
          "column": 42
        },
        "end": {
          "line": 210,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7201,
      "end": 7202,
      "loc": {
        "start": {
          "line": 210,
          "column": 46
        },
        "end": {
          "line": 210,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 7202,
      "end": 7209,
      "loc": {
        "start": {
          "line": 210,
          "column": 47
        },
        "end": {
          "line": 210,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7209,
      "end": 7210,
      "loc": {
        "start": {
          "line": 210,
          "column": 54
        },
        "end": {
          "line": 210,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 7210,
      "end": 7214,
      "loc": {
        "start": {
          "line": 210,
          "column": 55
        },
        "end": {
          "line": 210,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7214,
      "end": 7215,
      "loc": {
        "start": {
          "line": 210,
          "column": 59
        },
        "end": {
          "line": 210,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7215,
      "end": 7223,
      "loc": {
        "start": {
          "line": 210,
          "column": 60
        },
        "end": {
          "line": 210,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7223,
      "end": 7224,
      "loc": {
        "start": {
          "line": 210,
          "column": 68
        },
        "end": {
          "line": 210,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7224,
      "end": 7225,
      "loc": {
        "start": {
          "line": 210,
          "column": 69
        },
        "end": {
          "line": 210,
          "column": 70
        }
      }
    },
    {
      "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": 7231,
      "end": 7235,
      "loc": {
        "start": {
          "line": 212,
          "column": 4
        },
        "end": {
          "line": 212,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7235,
      "end": 7236,
      "loc": {
        "start": {
          "line": 212,
          "column": 8
        },
        "end": {
          "line": 212,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "accessors",
      "start": 7236,
      "end": 7245,
      "loc": {
        "start": {
          "line": 212,
          "column": 9
        },
        "end": {
          "line": 212,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7246,
      "end": 7247,
      "loc": {
        "start": {
          "line": 212,
          "column": 19
        },
        "end": {
          "line": 212,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7248,
      "end": 7249,
      "loc": {
        "start": {
          "line": 212,
          "column": 21
        },
        "end": {
          "line": 212,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 7256,
      "end": 7259,
      "loc": {
        "start": {
          "line": 213,
          "column": 6
        },
        "end": {
          "line": 213,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7259,
      "end": 7260,
      "loc": {
        "start": {
          "line": 213,
          "column": 9
        },
        "end": {
          "line": 213,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "get",
      "start": 7261,
      "end": 7266,
      "loc": {
        "start": {
          "line": 213,
          "column": 11
        },
        "end": {
          "line": 213,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7267,
      "end": 7268,
      "loc": {
        "start": {
          "line": 213,
          "column": 17
        },
        "end": {
          "line": 213,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7269,
      "end": 7275,
      "loc": {
        "start": {
          "line": 213,
          "column": 19
        },
        "end": {
          "line": 213,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7275,
      "end": 7276,
      "loc": {
        "start": {
          "line": 213,
          "column": 25
        },
        "end": {
          "line": 213,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "set",
      "start": 7283,
      "end": 7286,
      "loc": {
        "start": {
          "line": 214,
          "column": 6
        },
        "end": {
          "line": 214,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7286,
      "end": 7287,
      "loc": {
        "start": {
          "line": 214,
          "column": 9
        },
        "end": {
          "line": 214,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "set",
      "start": 7288,
      "end": 7293,
      "loc": {
        "start": {
          "line": 214,
          "column": 11
        },
        "end": {
          "line": 214,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7294,
      "end": 7295,
      "loc": {
        "start": {
          "line": 214,
          "column": 17
        },
        "end": {
          "line": 214,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7296,
      "end": 7302,
      "loc": {
        "start": {
          "line": 214,
          "column": 19
        },
        "end": {
          "line": 214,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7302,
      "end": 7303,
      "loc": {
        "start": {
          "line": 214,
          "column": 25
        },
        "end": {
          "line": 214,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addMultiple",
      "start": 7310,
      "end": 7321,
      "loc": {
        "start": {
          "line": 215,
          "column": 6
        },
        "end": {
          "line": 215,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7321,
      "end": 7322,
      "loc": {
        "start": {
          "line": 215,
          "column": 17
        },
        "end": {
          "line": 215,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "add",
      "start": 7323,
      "end": 7328,
      "loc": {
        "start": {
          "line": 215,
          "column": 19
        },
        "end": {
          "line": 215,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7329,
      "end": 7330,
      "loc": {
        "start": {
          "line": 215,
          "column": 25
        },
        "end": {
          "line": 215,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7331,
      "end": 7337,
      "loc": {
        "start": {
          "line": 215,
          "column": 27
        },
        "end": {
          "line": 215,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7337,
      "end": 7338,
      "loc": {
        "start": {
          "line": 215,
          "column": 33
        },
        "end": {
          "line": 215,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "add",
      "start": 7345,
      "end": 7348,
      "loc": {
        "start": {
          "line": 216,
          "column": 6
        },
        "end": {
          "line": 216,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7348,
      "end": 7349,
      "loc": {
        "start": {
          "line": 216,
          "column": 9
        },
        "end": {
          "line": 216,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "add",
      "start": 7350,
      "end": 7355,
      "loc": {
        "start": {
          "line": 216,
          "column": 11
        },
        "end": {
          "line": 216,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7356,
      "end": 7357,
      "loc": {
        "start": {
          "line": 216,
          "column": 17
        },
        "end": {
          "line": 216,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7358,
      "end": 7366,
      "loc": {
        "start": {
          "line": 216,
          "column": 19
        },
        "end": {
          "line": 216,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7366,
      "end": 7367,
      "loc": {
        "start": {
          "line": 216,
          "column": 27
        },
        "end": {
          "line": 216,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "create",
      "start": 7374,
      "end": 7380,
      "loc": {
        "start": {
          "line": 217,
          "column": 6
        },
        "end": {
          "line": 217,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7380,
      "end": 7381,
      "loc": {
        "start": {
          "line": 217,
          "column": 12
        },
        "end": {
          "line": 217,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "create",
      "start": 7382,
      "end": 7390,
      "loc": {
        "start": {
          "line": 217,
          "column": 14
        },
        "end": {
          "line": 217,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7391,
      "end": 7392,
      "loc": {
        "start": {
          "line": 217,
          "column": 23
        },
        "end": {
          "line": 217,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7393,
      "end": 7401,
      "loc": {
        "start": {
          "line": 217,
          "column": 25
        },
        "end": {
          "line": 217,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7401,
      "end": 7402,
      "loc": {
        "start": {
          "line": 217,
          "column": 33
        },
        "end": {
          "line": 217,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "remove",
      "start": 7409,
      "end": 7415,
      "loc": {
        "start": {
          "line": 218,
          "column": 6
        },
        "end": {
          "line": 218,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7415,
      "end": 7416,
      "loc": {
        "start": {
          "line": 218,
          "column": 12
        },
        "end": {
          "line": 218,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "remove",
      "start": 7417,
      "end": 7425,
      "loc": {
        "start": {
          "line": 218,
          "column": 14
        },
        "end": {
          "line": 218,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7426,
      "end": 7427,
      "loc": {
        "start": {
          "line": 218,
          "column": 23
        },
        "end": {
          "line": 218,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7428,
      "end": 7436,
      "loc": {
        "start": {
          "line": 218,
          "column": 25
        },
        "end": {
          "line": 218,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7436,
      "end": 7437,
      "loc": {
        "start": {
          "line": 218,
          "column": 33
        },
        "end": {
          "line": 218,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeMultiple",
      "start": 7444,
      "end": 7458,
      "loc": {
        "start": {
          "line": 219,
          "column": 6
        },
        "end": {
          "line": 219,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7458,
      "end": 7459,
      "loc": {
        "start": {
          "line": 219,
          "column": 20
        },
        "end": {
          "line": 219,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "remove",
      "start": 7460,
      "end": 7468,
      "loc": {
        "start": {
          "line": 219,
          "column": 22
        },
        "end": {
          "line": 219,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7469,
      "end": 7470,
      "loc": {
        "start": {
          "line": 219,
          "column": 31
        },
        "end": {
          "line": 219,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7471,
      "end": 7477,
      "loc": {
        "start": {
          "line": 219,
          "column": 33
        },
        "end": {
          "line": 219,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7477,
      "end": 7478,
      "loc": {
        "start": {
          "line": 219,
          "column": 39
        },
        "end": {
          "line": 219,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasSingle",
      "start": 7485,
      "end": 7494,
      "loc": {
        "start": {
          "line": 220,
          "column": 6
        },
        "end": {
          "line": 220,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7494,
      "end": 7495,
      "loc": {
        "start": {
          "line": 220,
          "column": 15
        },
        "end": {
          "line": 220,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "has",
      "start": 7496,
      "end": 7501,
      "loc": {
        "start": {
          "line": 220,
          "column": 17
        },
        "end": {
          "line": 220,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7502,
      "end": 7503,
      "loc": {
        "start": {
          "line": 220,
          "column": 23
        },
        "end": {
          "line": 220,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "singular",
      "start": 7504,
      "end": 7512,
      "loc": {
        "start": {
          "line": 220,
          "column": 25
        },
        "end": {
          "line": 220,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7512,
      "end": 7513,
      "loc": {
        "start": {
          "line": 220,
          "column": 33
        },
        "end": {
          "line": 220,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasAll",
      "start": 7520,
      "end": 7526,
      "loc": {
        "start": {
          "line": 221,
          "column": 6
        },
        "end": {
          "line": 221,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7526,
      "end": 7527,
      "loc": {
        "start": {
          "line": 221,
          "column": 12
        },
        "end": {
          "line": 221,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "has",
      "start": 7528,
      "end": 7533,
      "loc": {
        "start": {
          "line": 221,
          "column": 14
        },
        "end": {
          "line": 221,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7534,
      "end": 7535,
      "loc": {
        "start": {
          "line": 221,
          "column": 20
        },
        "end": {
          "line": 221,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7536,
      "end": 7542,
      "loc": {
        "start": {
          "line": 221,
          "column": 22
        },
        "end": {
          "line": 221,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7542,
      "end": 7543,
      "loc": {
        "start": {
          "line": 221,
          "column": 28
        },
        "end": {
          "line": 221,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "count",
      "start": 7550,
      "end": 7555,
      "loc": {
        "start": {
          "line": 222,
          "column": 6
        },
        "end": {
          "line": 222,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7555,
      "end": 7556,
      "loc": {
        "start": {
          "line": 222,
          "column": 11
        },
        "end": {
          "line": 222,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "count",
      "start": 7557,
      "end": 7564,
      "loc": {
        "start": {
          "line": 222,
          "column": 13
        },
        "end": {
          "line": 222,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "+/-",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": 9,
        "updateContext": null
      },
      "value": "+",
      "start": 7565,
      "end": 7566,
      "loc": {
        "start": {
          "line": 222,
          "column": 21
        },
        "end": {
          "line": 222,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plural",
      "start": 7567,
      "end": 7573,
      "loc": {
        "start": {
          "line": 222,
          "column": 23
        },
        "end": {
          "line": 222,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7578,
      "end": 7579,
      "loc": {
        "start": {
          "line": 223,
          "column": 4
        },
        "end": {
          "line": 223,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7579,
      "end": 7580,
      "loc": {
        "start": {
          "line": 223,
          "column": 5
        },
        "end": {
          "line": 223,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7583,
      "end": 7584,
      "loc": {
        "start": {
          "line": 224,
          "column": 2
        },
        "end": {
          "line": 224,
          "column": 3
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " the id is in the target table",
      "start": 7588,
      "end": 7620,
      "loc": {
        "start": {
          "line": 226,
          "column": 2
        },
        "end": {
          "line": 226,
          "column": 34
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " or in an extra table which connects two tables",
      "start": 7623,
      "end": 7672,
      "loc": {
        "start": {
          "line": 227,
          "column": 2
        },
        "end": {
          "line": 227,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "injectAttributes",
      "start": 7675,
      "end": 7691,
      "loc": {
        "start": {
          "line": 228,
          "column": 2
        },
        "end": {
          "line": 228,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7691,
      "end": 7692,
      "loc": {
        "start": {
          "line": 228,
          "column": 18
        },
        "end": {
          "line": 228,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7692,
      "end": 7693,
      "loc": {
        "start": {
          "line": 228,
          "column": 19
        },
        "end": {
          "line": 228,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7694,
      "end": 7695,
      "loc": {
        "start": {
          "line": 228,
          "column": 21
        },
        "end": {
          "line": 228,
          "column": 22
        }
      }
    },
    {
      "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": 7701,
      "end": 7705,
      "loc": {
        "start": {
          "line": 230,
          "column": 4
        },
        "end": {
          "line": 230,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7705,
      "end": 7706,
      "loc": {
        "start": {
          "line": 230,
          "column": 8
        },
        "end": {
          "line": 230,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 7706,
      "end": 7716,
      "loc": {
        "start": {
          "line": 230,
          "column": 9
        },
        "end": {
          "line": 230,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7717,
      "end": 7718,
      "loc": {
        "start": {
          "line": 230,
          "column": 20
        },
        "end": {
          "line": 230,
          "column": 21
        }
      }
    },
    {
      "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": 7719,
      "end": 7723,
      "loc": {
        "start": {
          "line": 230,
          "column": 22
        },
        "end": {
          "line": 230,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7723,
      "end": 7724,
      "loc": {
        "start": {
          "line": 230,
          "column": 26
        },
        "end": {
          "line": 230,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 7724,
      "end": 7734,
      "loc": {
        "start": {
          "line": 230,
          "column": 27
        },
        "end": {
          "line": 230,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7734,
      "end": 7735,
      "loc": {
        "start": {
          "line": 230,
          "column": 37
        },
        "end": {
          "line": 230,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7740,
      "end": 7744,
      "loc": {
        "start": {
          "line": 231,
          "column": 4
        },
        "end": {
          "line": 231,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7744,
      "end": 7745,
      "loc": {
        "start": {
          "line": 231,
          "column": 8
        },
        "end": {
          "line": 231,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 7745,
      "end": 7762,
      "loc": {
        "start": {
          "line": 231,
          "column": 9
        },
        "end": {
          "line": 231,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 7763,
      "end": 7764,
      "loc": {
        "start": {
          "line": 231,
          "column": 27
        },
        "end": {
          "line": 231,
          "column": 28
        }
      }
    },
    {
      "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": 7765,
      "end": 7769,
      "loc": {
        "start": {
          "line": 231,
          "column": 29
        },
        "end": {
          "line": 231,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7769,
      "end": 7770,
      "loc": {
        "start": {
          "line": 231,
          "column": 33
        },
        "end": {
          "line": 231,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 7770,
      "end": 7778,
      "loc": {
        "start": {
          "line": 231,
          "column": 34
        },
        "end": {
          "line": 231,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7778,
      "end": 7779,
      "loc": {
        "start": {
          "line": 231,
          "column": 42
        },
        "end": {
          "line": 231,
          "column": 43
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " remove any PKs previously defined by sequelize",
      "start": 7785,
      "end": 7834,
      "loc": {
        "start": {
          "line": 233,
          "column": 4
        },
        "end": {
          "line": 233,
          "column": 53
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " but ignore any keys that are part of this association (#5865)",
      "start": 7839,
      "end": 7903,
      "loc": {
        "start": {
          "line": 234,
          "column": 4
        },
        "end": {
          "line": 234,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 7908,
      "end": 7909,
      "loc": {
        "start": {
          "line": 235,
          "column": 4
        },
        "end": {
          "line": 235,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7909,
      "end": 7910,
      "loc": {
        "start": {
          "line": 235,
          "column": 5
        },
        "end": {
          "line": 235,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "each",
      "start": 7910,
      "end": 7914,
      "loc": {
        "start": {
          "line": 235,
          "column": 6
        },
        "end": {
          "line": 235,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7914,
      "end": 7915,
      "loc": {
        "start": {
          "line": 235,
          "column": 10
        },
        "end": {
          "line": 235,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 7915,
      "end": 7919,
      "loc": {
        "start": {
          "line": 235,
          "column": 11
        },
        "end": {
          "line": 235,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7919,
      "end": 7920,
      "loc": {
        "start": {
          "line": 235,
          "column": 15
        },
        "end": {
          "line": 235,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 7920,
      "end": 7927,
      "loc": {
        "start": {
          "line": 235,
          "column": 16
        },
        "end": {
          "line": 235,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7927,
      "end": 7928,
      "loc": {
        "start": {
          "line": 235,
          "column": 23
        },
        "end": {
          "line": 235,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 7928,
      "end": 7933,
      "loc": {
        "start": {
          "line": 235,
          "column": 24
        },
        "end": {
          "line": 235,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7933,
      "end": 7934,
      "loc": {
        "start": {
          "line": 235,
          "column": 29
        },
        "end": {
          "line": 235,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 7934,
      "end": 7947,
      "loc": {
        "start": {
          "line": 235,
          "column": 30
        },
        "end": {
          "line": 235,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7947,
      "end": 7948,
      "loc": {
        "start": {
          "line": 235,
          "column": 43
        },
        "end": {
          "line": 235,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7949,
      "end": 7950,
      "loc": {
        "start": {
          "line": 235,
          "column": 45
        },
        "end": {
          "line": 235,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 7950,
      "end": 7959,
      "loc": {
        "start": {
          "line": 235,
          "column": 46
        },
        "end": {
          "line": 235,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7959,
      "end": 7960,
      "loc": {
        "start": {
          "line": 235,
          "column": 55
        },
        "end": {
          "line": 235,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributeName",
      "start": 7961,
      "end": 7974,
      "loc": {
        "start": {
          "line": 235,
          "column": 57
        },
        "end": {
          "line": 235,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7974,
      "end": 7975,
      "loc": {
        "start": {
          "line": 235,
          "column": 70
        },
        "end": {
          "line": 235,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 7976,
      "end": 7978,
      "loc": {
        "start": {
          "line": 235,
          "column": 72
        },
        "end": {
          "line": 235,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7979,
      "end": 7980,
      "loc": {
        "start": {
          "line": 235,
          "column": 75
        },
        "end": {
          "line": 235,
          "column": 76
        }
      }
    },
    {
      "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": 7987,
      "end": 7989,
      "loc": {
        "start": {
          "line": 236,
          "column": 6
        },
        "end": {
          "line": 236,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 7990,
      "end": 7991,
      "loc": {
        "start": {
          "line": 236,
          "column": 9
        },
        "end": {
          "line": 236,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 7991,
      "end": 8000,
      "loc": {
        "start": {
          "line": 236,
          "column": 10
        },
        "end": {
          "line": 236,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8000,
      "end": 8001,
      "loc": {
        "start": {
          "line": 236,
          "column": 19
        },
        "end": {
          "line": 236,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKey",
      "start": 8001,
      "end": 8011,
      "loc": {
        "start": {
          "line": 236,
          "column": 20
        },
        "end": {
          "line": 236,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8012,
      "end": 8015,
      "loc": {
        "start": {
          "line": 236,
          "column": 31
        },
        "end": {
          "line": 236,
          "column": 34
        }
      }
    },
    {
      "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": 8016,
      "end": 8020,
      "loc": {
        "start": {
          "line": 236,
          "column": 35
        },
        "end": {
          "line": 236,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 8021,
      "end": 8023,
      "loc": {
        "start": {
          "line": 236,
          "column": 40
        },
        "end": {
          "line": 236,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 8024,
      "end": 8033,
      "loc": {
        "start": {
          "line": 236,
          "column": 43
        },
        "end": {
          "line": 236,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8033,
      "end": 8034,
      "loc": {
        "start": {
          "line": 236,
          "column": 52
        },
        "end": {
          "line": 236,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_autoGenerated",
      "start": 8034,
      "end": 8048,
      "loc": {
        "start": {
          "line": 236,
          "column": 53
        },
        "end": {
          "line": 236,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8049,
      "end": 8052,
      "loc": {
        "start": {
          "line": 236,
          "column": 68
        },
        "end": {
          "line": 236,
          "column": 71
        }
      }
    },
    {
      "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": 8053,
      "end": 8057,
      "loc": {
        "start": {
          "line": 236,
          "column": 72
        },
        "end": {
          "line": 236,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8057,
      "end": 8058,
      "loc": {
        "start": {
          "line": 236,
          "column": 76
        },
        "end": {
          "line": 236,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8059,
      "end": 8060,
      "loc": {
        "start": {
          "line": 236,
          "column": 78
        },
        "end": {
          "line": 236,
          "column": 79
        }
      }
    },
    {
      "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": 8069,
      "end": 8071,
      "loc": {
        "start": {
          "line": 237,
          "column": 8
        },
        "end": {
          "line": 237,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8072,
      "end": 8073,
      "loc": {
        "start": {
          "line": 237,
          "column": 11
        },
        "end": {
          "line": 237,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributeName",
      "start": 8073,
      "end": 8086,
      "loc": {
        "start": {
          "line": 237,
          "column": 12
        },
        "end": {
          "line": 237,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8087,
      "end": 8090,
      "loc": {
        "start": {
          "line": 237,
          "column": 26
        },
        "end": {
          "line": 237,
          "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": 8091,
      "end": 8095,
      "loc": {
        "start": {
          "line": 237,
          "column": 30
        },
        "end": {
          "line": 237,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8095,
      "end": 8096,
      "loc": {
        "start": {
          "line": 237,
          "column": 34
        },
        "end": {
          "line": 237,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 8096,
      "end": 8106,
      "loc": {
        "start": {
          "line": 237,
          "column": 35
        },
        "end": {
          "line": 237,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 8107,
      "end": 8109,
      "loc": {
        "start": {
          "line": 237,
          "column": 46
        },
        "end": {
          "line": 237,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributeName",
      "start": 8110,
      "end": 8123,
      "loc": {
        "start": {
          "line": 237,
          "column": 49
        },
        "end": {
          "line": 237,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 8124,
      "end": 8127,
      "loc": {
        "start": {
          "line": 237,
          "column": 63
        },
        "end": {
          "line": 237,
          "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": 8128,
      "end": 8132,
      "loc": {
        "start": {
          "line": 237,
          "column": 67
        },
        "end": {
          "line": 237,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8132,
      "end": 8133,
      "loc": {
        "start": {
          "line": 237,
          "column": 71
        },
        "end": {
          "line": 237,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 8133,
      "end": 8141,
      "loc": {
        "start": {
          "line": 237,
          "column": 72
        },
        "end": {
          "line": 237,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8141,
      "end": 8142,
      "loc": {
        "start": {
          "line": 237,
          "column": 80
        },
        "end": {
          "line": 237,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8143,
      "end": 8144,
      "loc": {
        "start": {
          "line": 237,
          "column": 82
        },
        "end": {
          "line": 237,
          "column": 83
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " this key is still needed as it's part of the association",
      "start": 8155,
      "end": 8214,
      "loc": {
        "start": {
          "line": 238,
          "column": 10
        },
        "end": {
          "line": 238,
          "column": 69
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " so just set primaryKey to false",
      "start": 8225,
      "end": 8259,
      "loc": {
        "start": {
          "line": 239,
          "column": 10
        },
        "end": {
          "line": 239,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 8270,
      "end": 8279,
      "loc": {
        "start": {
          "line": 240,
          "column": 10
        },
        "end": {
          "line": 240,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8279,
      "end": 8280,
      "loc": {
        "start": {
          "line": 240,
          "column": 19
        },
        "end": {
          "line": 240,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKey",
      "start": 8280,
      "end": 8290,
      "loc": {
        "start": {
          "line": 240,
          "column": 20
        },
        "end": {
          "line": 240,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8291,
      "end": 8292,
      "loc": {
        "start": {
          "line": 240,
          "column": 31
        },
        "end": {
          "line": 240,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 8293,
      "end": 8298,
      "loc": {
        "start": {
          "line": 240,
          "column": 33
        },
        "end": {
          "line": 240,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8298,
      "end": 8299,
      "loc": {
        "start": {
          "line": 240,
          "column": 38
        },
        "end": {
          "line": 240,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8308,
      "end": 8309,
      "loc": {
        "start": {
          "line": 241,
          "column": 8
        },
        "end": {
          "line": 241,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 8318,
      "end": 8322,
      "loc": {
        "start": {
          "line": 242,
          "column": 8
        },
        "end": {
          "line": 242,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8323,
      "end": 8324,
      "loc": {
        "start": {
          "line": 242,
          "column": 13
        },
        "end": {
          "line": 242,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "delete",
        "keyword": "delete",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "delete",
      "start": 8335,
      "end": 8341,
      "loc": {
        "start": {
          "line": 243,
          "column": 10
        },
        "end": {
          "line": 243,
          "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": 8342,
      "end": 8346,
      "loc": {
        "start": {
          "line": 243,
          "column": 17
        },
        "end": {
          "line": 243,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8346,
      "end": 8347,
      "loc": {
        "start": {
          "line": 243,
          "column": 21
        },
        "end": {
          "line": 243,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 8347,
      "end": 8354,
      "loc": {
        "start": {
          "line": 243,
          "column": 22
        },
        "end": {
          "line": 243,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8354,
      "end": 8355,
      "loc": {
        "start": {
          "line": 243,
          "column": 29
        },
        "end": {
          "line": 243,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 8355,
      "end": 8360,
      "loc": {
        "start": {
          "line": 243,
          "column": 30
        },
        "end": {
          "line": 243,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8360,
      "end": 8361,
      "loc": {
        "start": {
          "line": 243,
          "column": 35
        },
        "end": {
          "line": 243,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 8361,
      "end": 8374,
      "loc": {
        "start": {
          "line": 243,
          "column": 36
        },
        "end": {
          "line": 243,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8374,
      "end": 8375,
      "loc": {
        "start": {
          "line": 243,
          "column": 49
        },
        "end": {
          "line": 243,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributeName",
      "start": 8375,
      "end": 8388,
      "loc": {
        "start": {
          "line": 243,
          "column": 50
        },
        "end": {
          "line": 243,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8388,
      "end": 8389,
      "loc": {
        "start": {
          "line": 243,
          "column": 63
        },
        "end": {
          "line": 243,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8389,
      "end": 8390,
      "loc": {
        "start": {
          "line": 243,
          "column": 64
        },
        "end": {
          "line": 243,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8399,
      "end": 8400,
      "loc": {
        "start": {
          "line": 244,
          "column": 8
        },
        "end": {
          "line": 244,
          "column": 9
        }
      }
    },
    {
      "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": 8409,
      "end": 8413,
      "loc": {
        "start": {
          "line": 245,
          "column": 8
        },
        "end": {
          "line": 245,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8413,
      "end": 8414,
      "loc": {
        "start": {
          "line": 245,
          "column": 12
        },
        "end": {
          "line": 245,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyDeleted",
      "start": 8414,
      "end": 8431,
      "loc": {
        "start": {
          "line": 245,
          "column": 13
        },
        "end": {
          "line": 245,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8432,
      "end": 8433,
      "loc": {
        "start": {
          "line": 245,
          "column": 31
        },
        "end": {
          "line": 245,
          "column": 32
        }
      }
    },
    {
      "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": 8434,
      "end": 8438,
      "loc": {
        "start": {
          "line": 245,
          "column": 33
        },
        "end": {
          "line": 245,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8438,
      "end": 8439,
      "loc": {
        "start": {
          "line": 245,
          "column": 37
        },
        "end": {
          "line": 245,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8446,
      "end": 8447,
      "loc": {
        "start": {
          "line": 246,
          "column": 6
        },
        "end": {
          "line": 246,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8452,
      "end": 8453,
      "loc": {
        "start": {
          "line": 247,
          "column": 4
        },
        "end": {
          "line": 247,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8453,
      "end": 8454,
      "loc": {
        "start": {
          "line": 247,
          "column": 5
        },
        "end": {
          "line": 247,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8454,
      "end": 8455,
      "loc": {
        "start": {
          "line": 247,
          "column": 6
        },
        "end": {
          "line": 247,
          "column": 7
        }
      }
    },
    {
      "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": 8461,
      "end": 8466,
      "loc": {
        "start": {
          "line": 249,
          "column": 4
        },
        "end": {
          "line": 249,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 8467,
      "end": 8476,
      "loc": {
        "start": {
          "line": 249,
          "column": 10
        },
        "end": {
          "line": 249,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8477,
      "end": 8478,
      "loc": {
        "start": {
          "line": 249,
          "column": 20
        },
        "end": {
          "line": 249,
          "column": 21
        }
      }
    },
    {
      "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": 8479,
      "end": 8483,
      "loc": {
        "start": {
          "line": 249,
          "column": 22
        },
        "end": {
          "line": 249,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8483,
      "end": 8484,
      "loc": {
        "start": {
          "line": 249,
          "column": 26
        },
        "end": {
          "line": 249,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8484,
      "end": 8490,
      "loc": {
        "start": {
          "line": 249,
          "column": 27
        },
        "end": {
          "line": 249,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8490,
      "end": 8491,
      "loc": {
        "start": {
          "line": 249,
          "column": 33
        },
        "end": {
          "line": 249,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 8491,
      "end": 8504,
      "loc": {
        "start": {
          "line": 249,
          "column": 34
        },
        "end": {
          "line": 249,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8504,
      "end": 8505,
      "loc": {
        "start": {
          "line": 249,
          "column": 47
        },
        "end": {
          "line": 249,
          "column": 48
        }
      }
    },
    {
      "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": 8505,
      "end": 8509,
      "loc": {
        "start": {
          "line": 249,
          "column": 48
        },
        "end": {
          "line": 249,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8509,
      "end": 8510,
      "loc": {
        "start": {
          "line": 249,
          "column": 52
        },
        "end": {
          "line": 249,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8510,
      "end": 8516,
      "loc": {
        "start": {
          "line": 249,
          "column": 53
        },
        "end": {
          "line": 249,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8516,
      "end": 8517,
      "loc": {
        "start": {
          "line": 249,
          "column": 59
        },
        "end": {
          "line": 249,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 8517,
      "end": 8536,
      "loc": {
        "start": {
          "line": 249,
          "column": 60
        },
        "end": {
          "line": 249,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8536,
      "end": 8537,
      "loc": {
        "start": {
          "line": 249,
          "column": 79
        },
        "end": {
          "line": 249,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8537,
      "end": 8538,
      "loc": {
        "start": {
          "line": 249,
          "column": 80
        },
        "end": {
          "line": 249,
          "column": 81
        }
      }
    },
    {
      "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": 8543,
      "end": 8548,
      "loc": {
        "start": {
          "line": 250,
          "column": 4
        },
        "end": {
          "line": 250,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKeyType",
      "start": 8549,
      "end": 8562,
      "loc": {
        "start": {
          "line": 250,
          "column": 10
        },
        "end": {
          "line": 250,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8563,
      "end": 8564,
      "loc": {
        "start": {
          "line": 250,
          "column": 24
        },
        "end": {
          "line": 250,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 8565,
      "end": 8574,
      "loc": {
        "start": {
          "line": 250,
          "column": 26
        },
        "end": {
          "line": 250,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8574,
      "end": 8575,
      "loc": {
        "start": {
          "line": 250,
          "column": 35
        },
        "end": {
          "line": 250,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 8575,
      "end": 8579,
      "loc": {
        "start": {
          "line": 250,
          "column": 36
        },
        "end": {
          "line": 250,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8579,
      "end": 8580,
      "loc": {
        "start": {
          "line": 250,
          "column": 40
        },
        "end": {
          "line": 250,
          "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": 8585,
      "end": 8590,
      "loc": {
        "start": {
          "line": 251,
          "column": 4
        },
        "end": {
          "line": 251,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKeyField",
      "start": 8591,
      "end": 8605,
      "loc": {
        "start": {
          "line": 251,
          "column": 10
        },
        "end": {
          "line": 251,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8606,
      "end": 8607,
      "loc": {
        "start": {
          "line": 251,
          "column": 25
        },
        "end": {
          "line": 251,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 8608,
      "end": 8617,
      "loc": {
        "start": {
          "line": 251,
          "column": 27
        },
        "end": {
          "line": 251,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8617,
      "end": 8618,
      "loc": {
        "start": {
          "line": 251,
          "column": 36
        },
        "end": {
          "line": 251,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field",
      "start": 8618,
      "end": 8623,
      "loc": {
        "start": {
          "line": 251,
          "column": 37
        },
        "end": {
          "line": 251,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 8624,
      "end": 8626,
      "loc": {
        "start": {
          "line": 251,
          "column": 43
        },
        "end": {
          "line": 251,
          "column": 45
        }
      }
    },
    {
      "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": 8627,
      "end": 8631,
      "loc": {
        "start": {
          "line": 251,
          "column": 46
        },
        "end": {
          "line": 251,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8631,
      "end": 8632,
      "loc": {
        "start": {
          "line": 251,
          "column": 50
        },
        "end": {
          "line": 251,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 8632,
      "end": 8638,
      "loc": {
        "start": {
          "line": 251,
          "column": 51
        },
        "end": {
          "line": 251,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8638,
      "end": 8639,
      "loc": {
        "start": {
          "line": 251,
          "column": 57
        },
        "end": {
          "line": 251,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 8639,
      "end": 8658,
      "loc": {
        "start": {
          "line": 251,
          "column": 58
        },
        "end": {
          "line": 251,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8658,
      "end": 8659,
      "loc": {
        "start": {
          "line": 251,
          "column": 77
        },
        "end": {
          "line": 251,
          "column": 78
        }
      }
    },
    {
      "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": 8664,
      "end": 8669,
      "loc": {
        "start": {
          "line": 252,
          "column": 4
        },
        "end": {
          "line": 252,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 8670,
      "end": 8679,
      "loc": {
        "start": {
          "line": 252,
          "column": 10
        },
        "end": {
          "line": 252,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8680,
      "end": 8681,
      "loc": {
        "start": {
          "line": 252,
          "column": 20
        },
        "end": {
          "line": 252,
          "column": 21
        }
      }
    },
    {
      "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": 8682,
      "end": 8686,
      "loc": {
        "start": {
          "line": 252,
          "column": 22
        },
        "end": {
          "line": 252,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8686,
      "end": 8687,
      "loc": {
        "start": {
          "line": 252,
          "column": 26
        },
        "end": {
          "line": 252,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 8687,
      "end": 8693,
      "loc": {
        "start": {
          "line": 252,
          "column": 27
        },
        "end": {
          "line": 252,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8693,
      "end": 8694,
      "loc": {
        "start": {
          "line": 252,
          "column": 33
        },
        "end": {
          "line": 252,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 8694,
      "end": 8707,
      "loc": {
        "start": {
          "line": 252,
          "column": 34
        },
        "end": {
          "line": 252,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8707,
      "end": 8708,
      "loc": {
        "start": {
          "line": 252,
          "column": 47
        },
        "end": {
          "line": 252,
          "column": 48
        }
      }
    },
    {
      "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": 8708,
      "end": 8712,
      "loc": {
        "start": {
          "line": 252,
          "column": 48
        },
        "end": {
          "line": 252,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8712,
      "end": 8713,
      "loc": {
        "start": {
          "line": 252,
          "column": 52
        },
        "end": {
          "line": 252,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 8713,
      "end": 8719,
      "loc": {
        "start": {
          "line": 252,
          "column": 53
        },
        "end": {
          "line": 252,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8719,
      "end": 8720,
      "loc": {
        "start": {
          "line": 252,
          "column": 59
        },
        "end": {
          "line": 252,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 8720,
      "end": 8739,
      "loc": {
        "start": {
          "line": 252,
          "column": 60
        },
        "end": {
          "line": 252,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8739,
      "end": 8740,
      "loc": {
        "start": {
          "line": 252,
          "column": 79
        },
        "end": {
          "line": 252,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8740,
      "end": 8741,
      "loc": {
        "start": {
          "line": 252,
          "column": 80
        },
        "end": {
          "line": 252,
          "column": 81
        }
      }
    },
    {
      "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": 8746,
      "end": 8751,
      "loc": {
        "start": {
          "line": 253,
          "column": 4
        },
        "end": {
          "line": 253,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKeyType",
      "start": 8752,
      "end": 8765,
      "loc": {
        "start": {
          "line": 253,
          "column": 10
        },
        "end": {
          "line": 253,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8766,
      "end": 8767,
      "loc": {
        "start": {
          "line": 253,
          "column": 24
        },
        "end": {
          "line": 253,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 8768,
      "end": 8777,
      "loc": {
        "start": {
          "line": 253,
          "column": 26
        },
        "end": {
          "line": 253,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8777,
      "end": 8778,
      "loc": {
        "start": {
          "line": 253,
          "column": 35
        },
        "end": {
          "line": 253,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 8778,
      "end": 8782,
      "loc": {
        "start": {
          "line": 253,
          "column": 36
        },
        "end": {
          "line": 253,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8782,
      "end": 8783,
      "loc": {
        "start": {
          "line": 253,
          "column": 40
        },
        "end": {
          "line": 253,
          "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": 8788,
      "end": 8793,
      "loc": {
        "start": {
          "line": 254,
          "column": 4
        },
        "end": {
          "line": 254,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKeyField",
      "start": 8794,
      "end": 8808,
      "loc": {
        "start": {
          "line": 254,
          "column": 10
        },
        "end": {
          "line": 254,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8809,
      "end": 8810,
      "loc": {
        "start": {
          "line": 254,
          "column": 25
        },
        "end": {
          "line": 254,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 8811,
      "end": 8820,
      "loc": {
        "start": {
          "line": 254,
          "column": 27
        },
        "end": {
          "line": 254,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8820,
      "end": 8821,
      "loc": {
        "start": {
          "line": 254,
          "column": 36
        },
        "end": {
          "line": 254,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field",
      "start": 8821,
      "end": 8826,
      "loc": {
        "start": {
          "line": 254,
          "column": 37
        },
        "end": {
          "line": 254,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 8827,
      "end": 8829,
      "loc": {
        "start": {
          "line": 254,
          "column": 43
        },
        "end": {
          "line": 254,
          "column": 45
        }
      }
    },
    {
      "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": 8830,
      "end": 8834,
      "loc": {
        "start": {
          "line": 254,
          "column": 46
        },
        "end": {
          "line": 254,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8834,
      "end": 8835,
      "loc": {
        "start": {
          "line": 254,
          "column": 50
        },
        "end": {
          "line": 254,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 8835,
      "end": 8841,
      "loc": {
        "start": {
          "line": 254,
          "column": 51
        },
        "end": {
          "line": 254,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8841,
      "end": 8842,
      "loc": {
        "start": {
          "line": 254,
          "column": 57
        },
        "end": {
          "line": 254,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 8842,
      "end": 8861,
      "loc": {
        "start": {
          "line": 254,
          "column": 58
        },
        "end": {
          "line": 254,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8861,
      "end": 8862,
      "loc": {
        "start": {
          "line": 254,
          "column": 77
        },
        "end": {
          "line": 254,
          "column": 78
        }
      }
    },
    {
      "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": 8867,
      "end": 8872,
      "loc": {
        "start": {
          "line": 255,
          "column": 4
        },
        "end": {
          "line": 255,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 8873,
      "end": 8888,
      "loc": {
        "start": {
          "line": 255,
          "column": 10
        },
        "end": {
          "line": 255,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8889,
      "end": 8890,
      "loc": {
        "start": {
          "line": 255,
          "column": 26
        },
        "end": {
          "line": 255,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 8891,
      "end": 8892,
      "loc": {
        "start": {
          "line": 255,
          "column": 28
        },
        "end": {
          "line": 255,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8892,
      "end": 8893,
      "loc": {
        "start": {
          "line": 255,
          "column": 29
        },
        "end": {
          "line": 255,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 8893,
      "end": 8901,
      "loc": {
        "start": {
          "line": 255,
          "column": 30
        },
        "end": {
          "line": 255,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8901,
      "end": 8902,
      "loc": {
        "start": {
          "line": 255,
          "column": 38
        },
        "end": {
          "line": 255,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8902,
      "end": 8903,
      "loc": {
        "start": {
          "line": 255,
          "column": 39
        },
        "end": {
          "line": 255,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8903,
      "end": 8904,
      "loc": {
        "start": {
          "line": 255,
          "column": 40
        },
        "end": {
          "line": 255,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8904,
      "end": 8905,
      "loc": {
        "start": {
          "line": 255,
          "column": 41
        },
        "end": {
          "line": 255,
          "column": 42
        }
      }
    },
    {
      "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": 8906,
      "end": 8910,
      "loc": {
        "start": {
          "line": 255,
          "column": 43
        },
        "end": {
          "line": 255,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8910,
      "end": 8911,
      "loc": {
        "start": {
          "line": 255,
          "column": 47
        },
        "end": {
          "line": 255,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKeyAttribute",
      "start": 8911,
      "end": 8930,
      "loc": {
        "start": {
          "line": 255,
          "column": 48
        },
        "end": {
          "line": 255,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8930,
      "end": 8931,
      "loc": {
        "start": {
          "line": 255,
          "column": 67
        },
        "end": {
          "line": 255,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8932,
      "end": 8933,
      "loc": {
        "start": {
          "line": 255,
          "column": 69
        },
        "end": {
          "line": 255,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 8934,
      "end": 8938,
      "loc": {
        "start": {
          "line": 255,
          "column": 71
        },
        "end": {
          "line": 255,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8938,
      "end": 8939,
      "loc": {
        "start": {
          "line": 255,
          "column": 75
        },
        "end": {
          "line": 255,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKeyType",
      "start": 8940,
      "end": 8953,
      "loc": {
        "start": {
          "line": 255,
          "column": 77
        },
        "end": {
          "line": 255,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8954,
      "end": 8955,
      "loc": {
        "start": {
          "line": 255,
          "column": 91
        },
        "end": {
          "line": 255,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8955,
      "end": 8956,
      "loc": {
        "start": {
          "line": 255,
          "column": 92
        },
        "end": {
          "line": 255,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8956,
      "end": 8957,
      "loc": {
        "start": {
          "line": 255,
          "column": 93
        },
        "end": {
          "line": 255,
          "column": 94
        }
      }
    },
    {
      "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": 8962,
      "end": 8967,
      "loc": {
        "start": {
          "line": 256,
          "column": 4
        },
        "end": {
          "line": 256,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 8968,
      "end": 8983,
      "loc": {
        "start": {
          "line": 256,
          "column": 10
        },
        "end": {
          "line": 256,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 8984,
      "end": 8985,
      "loc": {
        "start": {
          "line": 256,
          "column": 26
        },
        "end": {
          "line": 256,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 8986,
      "end": 8987,
      "loc": {
        "start": {
          "line": 256,
          "column": 28
        },
        "end": {
          "line": 256,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8987,
      "end": 8988,
      "loc": {
        "start": {
          "line": 256,
          "column": 29
        },
        "end": {
          "line": 256,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 8988,
      "end": 8996,
      "loc": {
        "start": {
          "line": 256,
          "column": 30
        },
        "end": {
          "line": 256,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8996,
      "end": 8997,
      "loc": {
        "start": {
          "line": 256,
          "column": 38
        },
        "end": {
          "line": 256,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8997,
      "end": 8998,
      "loc": {
        "start": {
          "line": 256,
          "column": 39
        },
        "end": {
          "line": 256,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 8998,
      "end": 8999,
      "loc": {
        "start": {
          "line": 256,
          "column": 40
        },
        "end": {
          "line": 256,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 8999,
      "end": 9000,
      "loc": {
        "start": {
          "line": 256,
          "column": 41
        },
        "end": {
          "line": 256,
          "column": 42
        }
      }
    },
    {
      "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": 9001,
      "end": 9005,
      "loc": {
        "start": {
          "line": 256,
          "column": 43
        },
        "end": {
          "line": 256,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9005,
      "end": 9006,
      "loc": {
        "start": {
          "line": 256,
          "column": 47
        },
        "end": {
          "line": 256,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyAttribute",
      "start": 9006,
      "end": 9023,
      "loc": {
        "start": {
          "line": 256,
          "column": 48
        },
        "end": {
          "line": 256,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9023,
      "end": 9024,
      "loc": {
        "start": {
          "line": 256,
          "column": 65
        },
        "end": {
          "line": 256,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9025,
      "end": 9026,
      "loc": {
        "start": {
          "line": 256,
          "column": 67
        },
        "end": {
          "line": 256,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "type",
      "start": 9027,
      "end": 9031,
      "loc": {
        "start": {
          "line": 256,
          "column": 69
        },
        "end": {
          "line": 256,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9031,
      "end": 9032,
      "loc": {
        "start": {
          "line": 256,
          "column": 73
        },
        "end": {
          "line": 256,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKeyType",
      "start": 9033,
      "end": 9046,
      "loc": {
        "start": {
          "line": 256,
          "column": 75
        },
        "end": {
          "line": 256,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9047,
      "end": 9048,
      "loc": {
        "start": {
          "line": 256,
          "column": 89
        },
        "end": {
          "line": 256,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9048,
      "end": 9049,
      "loc": {
        "start": {
          "line": 256,
          "column": 90
        },
        "end": {
          "line": 256,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9049,
      "end": 9050,
      "loc": {
        "start": {
          "line": 256,
          "column": 91
        },
        "end": {
          "line": 256,
          "column": 92
        }
      }
    },
    {
      "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": 9056,
      "end": 9058,
      "loc": {
        "start": {
          "line": 258,
          "column": 4
        },
        "end": {
          "line": 258,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9059,
      "end": 9060,
      "loc": {
        "start": {
          "line": 258,
          "column": 7
        },
        "end": {
          "line": 258,
          "column": 8
        }
      }
    },
    {
      "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": 9060,
      "end": 9064,
      "loc": {
        "start": {
          "line": 258,
          "column": 8
        },
        "end": {
          "line": 258,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9064,
      "end": 9065,
      "loc": {
        "start": {
          "line": 258,
          "column": 12
        },
        "end": {
          "line": 258,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyDeleted",
      "start": 9065,
      "end": 9082,
      "loc": {
        "start": {
          "line": 258,
          "column": 13
        },
        "end": {
          "line": 258,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 9083,
      "end": 9086,
      "loc": {
        "start": {
          "line": 258,
          "column": 31
        },
        "end": {
          "line": 258,
          "column": 34
        }
      }
    },
    {
      "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": 9087,
      "end": 9091,
      "loc": {
        "start": {
          "line": 258,
          "column": 35
        },
        "end": {
          "line": 258,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9091,
      "end": 9092,
      "loc": {
        "start": {
          "line": 258,
          "column": 39
        },
        "end": {
          "line": 258,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9093,
      "end": 9094,
      "loc": {
        "start": {
          "line": 258,
          "column": 41
        },
        "end": {
          "line": 258,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 9101,
      "end": 9116,
      "loc": {
        "start": {
          "line": 259,
          "column": 6
        },
        "end": {
          "line": 259,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9116,
      "end": 9117,
      "loc": {
        "start": {
          "line": 259,
          "column": 21
        },
        "end": {
          "line": 259,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKey",
      "start": 9117,
      "end": 9127,
      "loc": {
        "start": {
          "line": 259,
          "column": 22
        },
        "end": {
          "line": 259,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9128,
      "end": 9129,
      "loc": {
        "start": {
          "line": 259,
          "column": 33
        },
        "end": {
          "line": 259,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 9130,
      "end": 9145,
      "loc": {
        "start": {
          "line": 259,
          "column": 35
        },
        "end": {
          "line": 259,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9145,
      "end": 9146,
      "loc": {
        "start": {
          "line": 259,
          "column": 50
        },
        "end": {
          "line": 259,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKey",
      "start": 9146,
      "end": 9156,
      "loc": {
        "start": {
          "line": 259,
          "column": 51
        },
        "end": {
          "line": 259,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9157,
      "end": 9158,
      "loc": {
        "start": {
          "line": 259,
          "column": 62
        },
        "end": {
          "line": 259,
          "column": 63
        }
      }
    },
    {
      "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": 9159,
      "end": 9163,
      "loc": {
        "start": {
          "line": 259,
          "column": 64
        },
        "end": {
          "line": 259,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9163,
      "end": 9164,
      "loc": {
        "start": {
          "line": 259,
          "column": 68
        },
        "end": {
          "line": 259,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9169,
      "end": 9170,
      "loc": {
        "start": {
          "line": 260,
          "column": 4
        },
        "end": {
          "line": 260,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 9171,
      "end": 9175,
      "loc": {
        "start": {
          "line": 260,
          "column": 6
        },
        "end": {
          "line": 260,
          "column": 10
        }
      }
    },
    {
      "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": 9176,
      "end": 9178,
      "loc": {
        "start": {
          "line": 260,
          "column": 11
        },
        "end": {
          "line": 260,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9179,
      "end": 9180,
      "loc": {
        "start": {
          "line": 260,
          "column": 14
        },
        "end": {
          "line": 260,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9180,
      "end": 9184,
      "loc": {
        "start": {
          "line": 260,
          "column": 15
        },
        "end": {
          "line": 260,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9184,
      "end": 9185,
      "loc": {
        "start": {
          "line": 260,
          "column": 19
        },
        "end": {
          "line": 260,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9185,
      "end": 9192,
      "loc": {
        "start": {
          "line": 260,
          "column": 20
        },
        "end": {
          "line": 260,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9192,
      "end": 9193,
      "loc": {
        "start": {
          "line": 260,
          "column": 27
        },
        "end": {
          "line": 260,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unique",
      "start": 9193,
      "end": 9199,
      "loc": {
        "start": {
          "line": 260,
          "column": 28
        },
        "end": {
          "line": 260,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 9200,
      "end": 9203,
      "loc": {
        "start": {
          "line": 260,
          "column": 35
        },
        "end": {
          "line": 260,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 9204,
      "end": 9209,
      "loc": {
        "start": {
          "line": 260,
          "column": 39
        },
        "end": {
          "line": 260,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9209,
      "end": 9210,
      "loc": {
        "start": {
          "line": 260,
          "column": 44
        },
        "end": {
          "line": 260,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9211,
      "end": 9212,
      "loc": {
        "start": {
          "line": 260,
          "column": 46
        },
        "end": {
          "line": 260,
          "column": 47
        }
      }
    },
    {
      "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": 9219,
      "end": 9224,
      "loc": {
        "start": {
          "line": 261,
          "column": 6
        },
        "end": {
          "line": 261,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "uniqueKey",
      "start": 9225,
      "end": 9234,
      "loc": {
        "start": {
          "line": 261,
          "column": 12
        },
        "end": {
          "line": 261,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9235,
      "end": 9236,
      "loc": {
        "start": {
          "line": 261,
          "column": 22
        },
        "end": {
          "line": 261,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9237,
      "end": 9238,
      "loc": {
        "start": {
          "line": 261,
          "column": 24
        },
        "end": {
          "line": 261,
          "column": 25
        }
      }
    },
    {
      "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": 9238,
      "end": 9242,
      "loc": {
        "start": {
          "line": 261,
          "column": 25
        },
        "end": {
          "line": 261,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9242,
      "end": 9243,
      "loc": {
        "start": {
          "line": 261,
          "column": 29
        },
        "end": {
          "line": 261,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9243,
      "end": 9250,
      "loc": {
        "start": {
          "line": 261,
          "column": 30
        },
        "end": {
          "line": 261,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9250,
      "end": 9251,
      "loc": {
        "start": {
          "line": 261,
          "column": 37
        },
        "end": {
          "line": 261,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9251,
      "end": 9256,
      "loc": {
        "start": {
          "line": 261,
          "column": 38
        },
        "end": {
          "line": 261,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9256,
      "end": 9257,
      "loc": {
        "start": {
          "line": 261,
          "column": 43
        },
        "end": {
          "line": 261,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "tableName",
      "start": 9257,
      "end": 9266,
      "loc": {
        "start": {
          "line": 261,
          "column": 44
        },
        "end": {
          "line": 261,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9266,
      "end": 9267,
      "loc": {
        "start": {
          "line": 261,
          "column": 53
        },
        "end": {
          "line": 261,
          "column": 54
        }
      }
    },
    {
      "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": 9268,
      "end": 9272,
      "loc": {
        "start": {
          "line": 261,
          "column": 55
        },
        "end": {
          "line": 261,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9272,
      "end": 9273,
      "loc": {
        "start": {
          "line": 261,
          "column": 59
        },
        "end": {
          "line": 261,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 9273,
      "end": 9283,
      "loc": {
        "start": {
          "line": 261,
          "column": 60
        },
        "end": {
          "line": 261,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9283,
      "end": 9284,
      "loc": {
        "start": {
          "line": 261,
          "column": 70
        },
        "end": {
          "line": 261,
          "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": 9285,
      "end": 9289,
      "loc": {
        "start": {
          "line": 261,
          "column": 72
        },
        "end": {
          "line": 261,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9289,
      "end": 9290,
      "loc": {
        "start": {
          "line": 261,
          "column": 76
        },
        "end": {
          "line": 261,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 9290,
      "end": 9298,
      "loc": {
        "start": {
          "line": 261,
          "column": 77
        },
        "end": {
          "line": 261,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9298,
      "end": 9299,
      "loc": {
        "start": {
          "line": 261,
          "column": 85
        },
        "end": {
          "line": 261,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "unique",
      "start": 9300,
      "end": 9308,
      "loc": {
        "start": {
          "line": 261,
          "column": 87
        },
        "end": {
          "line": 261,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9308,
      "end": 9309,
      "loc": {
        "start": {
          "line": 261,
          "column": 95
        },
        "end": {
          "line": 261,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9309,
      "end": 9310,
      "loc": {
        "start": {
          "line": 261,
          "column": 96
        },
        "end": {
          "line": 261,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "join",
      "start": 9310,
      "end": 9314,
      "loc": {
        "start": {
          "line": 261,
          "column": 97
        },
        "end": {
          "line": 261,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9314,
      "end": 9315,
      "loc": {
        "start": {
          "line": 261,
          "column": 101
        },
        "end": {
          "line": 261,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "_",
      "start": 9315,
      "end": 9318,
      "loc": {
        "start": {
          "line": 261,
          "column": 102
        },
        "end": {
          "line": 261,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9318,
      "end": 9319,
      "loc": {
        "start": {
          "line": 261,
          "column": 105
        },
        "end": {
          "line": 261,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9319,
      "end": 9320,
      "loc": {
        "start": {
          "line": 261,
          "column": 106
        },
        "end": {
          "line": 261,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 9327,
      "end": 9342,
      "loc": {
        "start": {
          "line": 262,
          "column": 6
        },
        "end": {
          "line": 262,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9342,
      "end": 9343,
      "loc": {
        "start": {
          "line": 262,
          "column": 21
        },
        "end": {
          "line": 262,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unique",
      "start": 9343,
      "end": 9349,
      "loc": {
        "start": {
          "line": 262,
          "column": 22
        },
        "end": {
          "line": 262,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9350,
      "end": 9351,
      "loc": {
        "start": {
          "line": 262,
          "column": 29
        },
        "end": {
          "line": 262,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 9352,
      "end": 9367,
      "loc": {
        "start": {
          "line": 262,
          "column": 31
        },
        "end": {
          "line": 262,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9367,
      "end": 9368,
      "loc": {
        "start": {
          "line": 262,
          "column": 46
        },
        "end": {
          "line": 262,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unique",
      "start": 9368,
      "end": 9374,
      "loc": {
        "start": {
          "line": 262,
          "column": 47
        },
        "end": {
          "line": 262,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9375,
      "end": 9376,
      "loc": {
        "start": {
          "line": 262,
          "column": 54
        },
        "end": {
          "line": 262,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "uniqueKey",
      "start": 9377,
      "end": 9386,
      "loc": {
        "start": {
          "line": 262,
          "column": 56
        },
        "end": {
          "line": 262,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9386,
      "end": 9387,
      "loc": {
        "start": {
          "line": 262,
          "column": 65
        },
        "end": {
          "line": 262,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9392,
      "end": 9393,
      "loc": {
        "start": {
          "line": 263,
          "column": 4
        },
        "end": {
          "line": 263,
          "column": 5
        }
      }
    },
    {
      "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": 9399,
      "end": 9401,
      "loc": {
        "start": {
          "line": 265,
          "column": 4
        },
        "end": {
          "line": 265,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9402,
      "end": 9403,
      "loc": {
        "start": {
          "line": 265,
          "column": 7
        },
        "end": {
          "line": 265,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 9403,
      "end": 9404,
      "loc": {
        "start": {
          "line": 265,
          "column": 8
        },
        "end": {
          "line": 265,
          "column": 9
        }
      }
    },
    {
      "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": 9404,
      "end": 9408,
      "loc": {
        "start": {
          "line": 265,
          "column": 9
        },
        "end": {
          "line": 265,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9408,
      "end": 9409,
      "loc": {
        "start": {
          "line": 265,
          "column": 13
        },
        "end": {
          "line": 265,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9409,
      "end": 9416,
      "loc": {
        "start": {
          "line": 265,
          "column": 14
        },
        "end": {
          "line": 265,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9416,
      "end": 9417,
      "loc": {
        "start": {
          "line": 265,
          "column": 21
        },
        "end": {
          "line": 265,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9417,
      "end": 9422,
      "loc": {
        "start": {
          "line": 265,
          "column": 22
        },
        "end": {
          "line": 265,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9422,
      "end": 9423,
      "loc": {
        "start": {
          "line": 265,
          "column": 27
        },
        "end": {
          "line": 265,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 9423,
      "end": 9436,
      "loc": {
        "start": {
          "line": 265,
          "column": 28
        },
        "end": {
          "line": 265,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9436,
      "end": 9437,
      "loc": {
        "start": {
          "line": 265,
          "column": 41
        },
        "end": {
          "line": 265,
          "column": 42
        }
      }
    },
    {
      "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": 9437,
      "end": 9441,
      "loc": {
        "start": {
          "line": 265,
          "column": 42
        },
        "end": {
          "line": 265,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9441,
      "end": 9442,
      "loc": {
        "start": {
          "line": 265,
          "column": 46
        },
        "end": {
          "line": 265,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 9442,
      "end": 9452,
      "loc": {
        "start": {
          "line": 265,
          "column": 47
        },
        "end": {
          "line": 265,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9452,
      "end": 9453,
      "loc": {
        "start": {
          "line": 265,
          "column": 57
        },
        "end": {
          "line": 265,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9453,
      "end": 9454,
      "loc": {
        "start": {
          "line": 265,
          "column": 58
        },
        "end": {
          "line": 265,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9455,
      "end": 9456,
      "loc": {
        "start": {
          "line": 265,
          "column": 60
        },
        "end": {
          "line": 265,
          "column": 61
        }
      }
    },
    {
      "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": 9463,
      "end": 9467,
      "loc": {
        "start": {
          "line": 266,
          "column": 6
        },
        "end": {
          "line": 266,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9467,
      "end": 9468,
      "loc": {
        "start": {
          "line": 266,
          "column": 10
        },
        "end": {
          "line": 266,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9468,
      "end": 9475,
      "loc": {
        "start": {
          "line": 266,
          "column": 11
        },
        "end": {
          "line": 266,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9475,
      "end": 9476,
      "loc": {
        "start": {
          "line": 266,
          "column": 18
        },
        "end": {
          "line": 266,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9476,
      "end": 9481,
      "loc": {
        "start": {
          "line": 266,
          "column": 19
        },
        "end": {
          "line": 266,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9481,
      "end": 9482,
      "loc": {
        "start": {
          "line": 266,
          "column": 24
        },
        "end": {
          "line": 266,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 9482,
      "end": 9495,
      "loc": {
        "start": {
          "line": 266,
          "column": 25
        },
        "end": {
          "line": 266,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9495,
      "end": 9496,
      "loc": {
        "start": {
          "line": 266,
          "column": 38
        },
        "end": {
          "line": 266,
          "column": 39
        }
      }
    },
    {
      "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": 9496,
      "end": 9500,
      "loc": {
        "start": {
          "line": 266,
          "column": 39
        },
        "end": {
          "line": 266,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9500,
      "end": 9501,
      "loc": {
        "start": {
          "line": 266,
          "column": 43
        },
        "end": {
          "line": 266,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 9501,
      "end": 9511,
      "loc": {
        "start": {
          "line": 266,
          "column": 44
        },
        "end": {
          "line": 266,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9511,
      "end": 9512,
      "loc": {
        "start": {
          "line": 266,
          "column": 54
        },
        "end": {
          "line": 266,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9513,
      "end": 9514,
      "loc": {
        "start": {
          "line": 266,
          "column": 56
        },
        "end": {
          "line": 266,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9515,
      "end": 9516,
      "loc": {
        "start": {
          "line": 266,
          "column": 58
        },
        "end": {
          "line": 266,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_autoGenerated",
      "start": 9525,
      "end": 9539,
      "loc": {
        "start": {
          "line": 267,
          "column": 8
        },
        "end": {
          "line": 267,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9539,
      "end": 9540,
      "loc": {
        "start": {
          "line": 267,
          "column": 22
        },
        "end": {
          "line": 267,
          "column": 23
        }
      }
    },
    {
      "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": 9541,
      "end": 9545,
      "loc": {
        "start": {
          "line": 267,
          "column": 24
        },
        "end": {
          "line": 267,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9552,
      "end": 9553,
      "loc": {
        "start": {
          "line": 268,
          "column": 6
        },
        "end": {
          "line": 268,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9553,
      "end": 9554,
      "loc": {
        "start": {
          "line": 268,
          "column": 7
        },
        "end": {
          "line": 268,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9559,
      "end": 9560,
      "loc": {
        "start": {
          "line": 269,
          "column": 4
        },
        "end": {
          "line": 269,
          "column": 5
        }
      }
    },
    {
      "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": 9566,
      "end": 9568,
      "loc": {
        "start": {
          "line": 271,
          "column": 4
        },
        "end": {
          "line": 271,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9569,
      "end": 9570,
      "loc": {
        "start": {
          "line": 271,
          "column": 7
        },
        "end": {
          "line": 271,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 9570,
      "end": 9571,
      "loc": {
        "start": {
          "line": 271,
          "column": 8
        },
        "end": {
          "line": 271,
          "column": 9
        }
      }
    },
    {
      "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": 9571,
      "end": 9575,
      "loc": {
        "start": {
          "line": 271,
          "column": 9
        },
        "end": {
          "line": 271,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9575,
      "end": 9576,
      "loc": {
        "start": {
          "line": 271,
          "column": 13
        },
        "end": {
          "line": 271,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9576,
      "end": 9583,
      "loc": {
        "start": {
          "line": 271,
          "column": 14
        },
        "end": {
          "line": 271,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9583,
      "end": 9584,
      "loc": {
        "start": {
          "line": 271,
          "column": 21
        },
        "end": {
          "line": 271,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9584,
      "end": 9589,
      "loc": {
        "start": {
          "line": 271,
          "column": 22
        },
        "end": {
          "line": 271,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9589,
      "end": 9590,
      "loc": {
        "start": {
          "line": 271,
          "column": 27
        },
        "end": {
          "line": 271,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 9590,
      "end": 9603,
      "loc": {
        "start": {
          "line": 271,
          "column": 28
        },
        "end": {
          "line": 271,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9603,
      "end": 9604,
      "loc": {
        "start": {
          "line": 271,
          "column": 41
        },
        "end": {
          "line": 271,
          "column": 42
        }
      }
    },
    {
      "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": 9604,
      "end": 9608,
      "loc": {
        "start": {
          "line": 271,
          "column": 42
        },
        "end": {
          "line": 271,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9608,
      "end": 9609,
      "loc": {
        "start": {
          "line": 271,
          "column": 46
        },
        "end": {
          "line": 271,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 9609,
      "end": 9617,
      "loc": {
        "start": {
          "line": 271,
          "column": 47
        },
        "end": {
          "line": 271,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9617,
      "end": 9618,
      "loc": {
        "start": {
          "line": 271,
          "column": 55
        },
        "end": {
          "line": 271,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9618,
      "end": 9619,
      "loc": {
        "start": {
          "line": 271,
          "column": 56
        },
        "end": {
          "line": 271,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9620,
      "end": 9621,
      "loc": {
        "start": {
          "line": 271,
          "column": 58
        },
        "end": {
          "line": 271,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9628,
      "end": 9632,
      "loc": {
        "start": {
          "line": 272,
          "column": 6
        },
        "end": {
          "line": 272,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9632,
      "end": 9633,
      "loc": {
        "start": {
          "line": 272,
          "column": 10
        },
        "end": {
          "line": 272,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 9633,
      "end": 9640,
      "loc": {
        "start": {
          "line": 272,
          "column": 11
        },
        "end": {
          "line": 272,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9640,
      "end": 9641,
      "loc": {
        "start": {
          "line": 272,
          "column": 18
        },
        "end": {
          "line": 272,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9641,
      "end": 9646,
      "loc": {
        "start": {
          "line": 272,
          "column": 19
        },
        "end": {
          "line": 272,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9646,
      "end": 9647,
      "loc": {
        "start": {
          "line": 272,
          "column": 24
        },
        "end": {
          "line": 272,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 9647,
      "end": 9660,
      "loc": {
        "start": {
          "line": 272,
          "column": 25
        },
        "end": {
          "line": 272,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9660,
      "end": 9661,
      "loc": {
        "start": {
          "line": 272,
          "column": 38
        },
        "end": {
          "line": 272,
          "column": 39
        }
      }
    },
    {
      "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": 9661,
      "end": 9665,
      "loc": {
        "start": {
          "line": 272,
          "column": 39
        },
        "end": {
          "line": 272,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9665,
      "end": 9666,
      "loc": {
        "start": {
          "line": 272,
          "column": 43
        },
        "end": {
          "line": 272,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 9666,
      "end": 9674,
      "loc": {
        "start": {
          "line": 272,
          "column": 44
        },
        "end": {
          "line": 272,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9674,
      "end": 9675,
      "loc": {
        "start": {
          "line": 272,
          "column": 52
        },
        "end": {
          "line": 272,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9676,
      "end": 9677,
      "loc": {
        "start": {
          "line": 272,
          "column": 54
        },
        "end": {
          "line": 272,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9678,
      "end": 9679,
      "loc": {
        "start": {
          "line": 272,
          "column": 56
        },
        "end": {
          "line": 272,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_autoGenerated",
      "start": 9688,
      "end": 9702,
      "loc": {
        "start": {
          "line": 273,
          "column": 8
        },
        "end": {
          "line": 273,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9702,
      "end": 9703,
      "loc": {
        "start": {
          "line": 273,
          "column": 22
        },
        "end": {
          "line": 273,
          "column": 23
        }
      }
    },
    {
      "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": 9704,
      "end": 9708,
      "loc": {
        "start": {
          "line": 273,
          "column": 24
        },
        "end": {
          "line": 273,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9715,
      "end": 9716,
      "loc": {
        "start": {
          "line": 274,
          "column": 6
        },
        "end": {
          "line": 274,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9716,
      "end": 9717,
      "loc": {
        "start": {
          "line": 274,
          "column": 7
        },
        "end": {
          "line": 274,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9722,
      "end": 9723,
      "loc": {
        "start": {
          "line": 275,
          "column": 4
        },
        "end": {
          "line": 275,
          "column": 5
        }
      }
    },
    {
      "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": 9729,
      "end": 9731,
      "loc": {
        "start": {
          "line": 277,
          "column": 4
        },
        "end": {
          "line": 277,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9732,
      "end": 9733,
      "loc": {
        "start": {
          "line": 277,
          "column": 7
        },
        "end": {
          "line": 277,
          "column": 8
        }
      }
    },
    {
      "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": 9733,
      "end": 9737,
      "loc": {
        "start": {
          "line": 277,
          "column": 8
        },
        "end": {
          "line": 277,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9737,
      "end": 9738,
      "loc": {
        "start": {
          "line": 277,
          "column": 12
        },
        "end": {
          "line": 277,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 9738,
      "end": 9745,
      "loc": {
        "start": {
          "line": 277,
          "column": 13
        },
        "end": {
          "line": 277,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9745,
      "end": 9746,
      "loc": {
        "start": {
          "line": 277,
          "column": 20
        },
        "end": {
          "line": 277,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "constraints",
      "start": 9746,
      "end": 9757,
      "loc": {
        "start": {
          "line": 277,
          "column": 21
        },
        "end": {
          "line": 277,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 9758,
      "end": 9761,
      "loc": {
        "start": {
          "line": 277,
          "column": 33
        },
        "end": {
          "line": 277,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 9762,
      "end": 9767,
      "loc": {
        "start": {
          "line": 277,
          "column": 37
        },
        "end": {
          "line": 277,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9767,
      "end": 9768,
      "loc": {
        "start": {
          "line": 277,
          "column": 42
        },
        "end": {
          "line": 277,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9769,
      "end": 9770,
      "loc": {
        "start": {
          "line": 277,
          "column": 44
        },
        "end": {
          "line": 277,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 9777,
      "end": 9792,
      "loc": {
        "start": {
          "line": 278,
          "column": 6
        },
        "end": {
          "line": 278,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9792,
      "end": 9793,
      "loc": {
        "start": {
          "line": 278,
          "column": 21
        },
        "end": {
          "line": 278,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "references",
      "start": 9793,
      "end": 9803,
      "loc": {
        "start": {
          "line": 278,
          "column": 22
        },
        "end": {
          "line": 278,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9804,
      "end": 9805,
      "loc": {
        "start": {
          "line": 278,
          "column": 33
        },
        "end": {
          "line": 278,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9806,
      "end": 9807,
      "loc": {
        "start": {
          "line": 278,
          "column": 35
        },
        "end": {
          "line": 278,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 9816,
      "end": 9821,
      "loc": {
        "start": {
          "line": 279,
          "column": 8
        },
        "end": {
          "line": 279,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9821,
      "end": 9822,
      "loc": {
        "start": {
          "line": 279,
          "column": 13
        },
        "end": {
          "line": 279,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 9823,
      "end": 9827,
      "loc": {
        "start": {
          "line": 279,
          "column": 15
        },
        "end": {
          "line": 279,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9827,
      "end": 9828,
      "loc": {
        "start": {
          "line": 279,
          "column": 19
        },
        "end": {
          "line": 279,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 9828,
      "end": 9834,
      "loc": {
        "start": {
          "line": 279,
          "column": 20
        },
        "end": {
          "line": 279,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9834,
      "end": 9835,
      "loc": {
        "start": {
          "line": 279,
          "column": 26
        },
        "end": {
          "line": 279,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getTableName",
      "start": 9835,
      "end": 9847,
      "loc": {
        "start": {
          "line": 279,
          "column": 27
        },
        "end": {
          "line": 279,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9847,
      "end": 9848,
      "loc": {
        "start": {
          "line": 279,
          "column": 39
        },
        "end": {
          "line": 279,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9848,
      "end": 9849,
      "loc": {
        "start": {
          "line": 279,
          "column": 40
        },
        "end": {
          "line": 279,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9849,
      "end": 9850,
      "loc": {
        "start": {
          "line": 279,
          "column": 41
        },
        "end": {
          "line": 279,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "key",
      "start": 9859,
      "end": 9862,
      "loc": {
        "start": {
          "line": 280,
          "column": 8
        },
        "end": {
          "line": 280,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9862,
      "end": 9863,
      "loc": {
        "start": {
          "line": 280,
          "column": 11
        },
        "end": {
          "line": 280,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKeyField",
      "start": 9866,
      "end": 9880,
      "loc": {
        "start": {
          "line": 280,
          "column": 15
        },
        "end": {
          "line": 280,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 9887,
      "end": 9888,
      "loc": {
        "start": {
          "line": 281,
          "column": 6
        },
        "end": {
          "line": 281,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9888,
      "end": 9889,
      "loc": {
        "start": {
          "line": 281,
          "column": 7
        },
        "end": {
          "line": 281,
          "column": 8
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " For the source attribute the passed option is the priority",
      "start": 9896,
      "end": 9957,
      "loc": {
        "start": {
          "line": 282,
          "column": 6
        },
        "end": {
          "line": 282,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 9964,
      "end": 9979,
      "loc": {
        "start": {
          "line": 283,
          "column": 6
        },
        "end": {
          "line": 283,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9979,
      "end": 9980,
      "loc": {
        "start": {
          "line": 283,
          "column": 21
        },
        "end": {
          "line": 283,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 9980,
      "end": 9988,
      "loc": {
        "start": {
          "line": 283,
          "column": 22
        },
        "end": {
          "line": 283,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 9989,
      "end": 9990,
      "loc": {
        "start": {
          "line": 283,
          "column": 31
        },
        "end": {
          "line": 283,
          "column": 32
        }
      }
    },
    {
      "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": 9991,
      "end": 9995,
      "loc": {
        "start": {
          "line": 283,
          "column": 33
        },
        "end": {
          "line": 283,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 9995,
      "end": 9996,
      "loc": {
        "start": {
          "line": 283,
          "column": 37
        },
        "end": {
          "line": 283,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 9996,
      "end": 10003,
      "loc": {
        "start": {
          "line": 283,
          "column": 38
        },
        "end": {
          "line": 283,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10003,
      "end": 10004,
      "loc": {
        "start": {
          "line": 283,
          "column": 45
        },
        "end": {
          "line": 283,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10004,
      "end": 10012,
      "loc": {
        "start": {
          "line": 283,
          "column": 46
        },
        "end": {
          "line": 283,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 10013,
      "end": 10015,
      "loc": {
        "start": {
          "line": 283,
          "column": 55
        },
        "end": {
          "line": 283,
          "column": 57
        }
      }
    },
    {
      "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": 10016,
      "end": 10020,
      "loc": {
        "start": {
          "line": 283,
          "column": 58
        },
        "end": {
          "line": 283,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10020,
      "end": 10021,
      "loc": {
        "start": {
          "line": 283,
          "column": 62
        },
        "end": {
          "line": 283,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 10021,
      "end": 10028,
      "loc": {
        "start": {
          "line": 283,
          "column": 63
        },
        "end": {
          "line": 283,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10028,
      "end": 10029,
      "loc": {
        "start": {
          "line": 283,
          "column": 70
        },
        "end": {
          "line": 283,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 10029,
      "end": 10034,
      "loc": {
        "start": {
          "line": 283,
          "column": 71
        },
        "end": {
          "line": 283,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10034,
      "end": 10035,
      "loc": {
        "start": {
          "line": 283,
          "column": 76
        },
        "end": {
          "line": 283,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 10035,
      "end": 10048,
      "loc": {
        "start": {
          "line": 283,
          "column": 77
        },
        "end": {
          "line": 283,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10048,
      "end": 10049,
      "loc": {
        "start": {
          "line": 283,
          "column": 90
        },
        "end": {
          "line": 283,
          "column": 91
        }
      }
    },
    {
      "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": 10049,
      "end": 10053,
      "loc": {
        "start": {
          "line": 283,
          "column": 91
        },
        "end": {
          "line": 283,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10053,
      "end": 10054,
      "loc": {
        "start": {
          "line": 283,
          "column": 95
        },
        "end": {
          "line": 283,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 10054,
      "end": 10064,
      "loc": {
        "start": {
          "line": 283,
          "column": 96
        },
        "end": {
          "line": 283,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10064,
      "end": 10065,
      "loc": {
        "start": {
          "line": 283,
          "column": 106
        },
        "end": {
          "line": 283,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10065,
      "end": 10066,
      "loc": {
        "start": {
          "line": 283,
          "column": 107
        },
        "end": {
          "line": 283,
          "column": 108
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10066,
      "end": 10074,
      "loc": {
        "start": {
          "line": 283,
          "column": 108
        },
        "end": {
          "line": 283,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10074,
      "end": 10075,
      "loc": {
        "start": {
          "line": 283,
          "column": 116
        },
        "end": {
          "line": 283,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 10082,
      "end": 10097,
      "loc": {
        "start": {
          "line": 284,
          "column": 6
        },
        "end": {
          "line": 284,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10097,
      "end": 10098,
      "loc": {
        "start": {
          "line": 284,
          "column": 21
        },
        "end": {
          "line": 284,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10098,
      "end": 10106,
      "loc": {
        "start": {
          "line": 284,
          "column": 22
        },
        "end": {
          "line": 284,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10107,
      "end": 10108,
      "loc": {
        "start": {
          "line": 284,
          "column": 31
        },
        "end": {
          "line": 284,
          "column": 32
        }
      }
    },
    {
      "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": 10109,
      "end": 10113,
      "loc": {
        "start": {
          "line": 284,
          "column": 33
        },
        "end": {
          "line": 284,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10113,
      "end": 10114,
      "loc": {
        "start": {
          "line": 284,
          "column": 37
        },
        "end": {
          "line": 284,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10114,
      "end": 10121,
      "loc": {
        "start": {
          "line": 284,
          "column": 38
        },
        "end": {
          "line": 284,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10121,
      "end": 10122,
      "loc": {
        "start": {
          "line": 284,
          "column": 45
        },
        "end": {
          "line": 284,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10122,
      "end": 10130,
      "loc": {
        "start": {
          "line": 284,
          "column": 46
        },
        "end": {
          "line": 284,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 10131,
      "end": 10133,
      "loc": {
        "start": {
          "line": 284,
          "column": 55
        },
        "end": {
          "line": 284,
          "column": 57
        }
      }
    },
    {
      "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": 10134,
      "end": 10138,
      "loc": {
        "start": {
          "line": 284,
          "column": 58
        },
        "end": {
          "line": 284,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10138,
      "end": 10139,
      "loc": {
        "start": {
          "line": 284,
          "column": 62
        },
        "end": {
          "line": 284,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 10139,
      "end": 10146,
      "loc": {
        "start": {
          "line": 284,
          "column": 63
        },
        "end": {
          "line": 284,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10146,
      "end": 10147,
      "loc": {
        "start": {
          "line": 284,
          "column": 70
        },
        "end": {
          "line": 284,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 10147,
      "end": 10152,
      "loc": {
        "start": {
          "line": 284,
          "column": 71
        },
        "end": {
          "line": 284,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10152,
      "end": 10153,
      "loc": {
        "start": {
          "line": 284,
          "column": 76
        },
        "end": {
          "line": 284,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 10153,
      "end": 10166,
      "loc": {
        "start": {
          "line": 284,
          "column": 77
        },
        "end": {
          "line": 284,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10166,
      "end": 10167,
      "loc": {
        "start": {
          "line": 284,
          "column": 90
        },
        "end": {
          "line": 284,
          "column": 91
        }
      }
    },
    {
      "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": 10167,
      "end": 10171,
      "loc": {
        "start": {
          "line": 284,
          "column": 91
        },
        "end": {
          "line": 284,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10171,
      "end": 10172,
      "loc": {
        "start": {
          "line": 284,
          "column": 95
        },
        "end": {
          "line": 284,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 10172,
      "end": 10182,
      "loc": {
        "start": {
          "line": 284,
          "column": 96
        },
        "end": {
          "line": 284,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10182,
      "end": 10183,
      "loc": {
        "start": {
          "line": 284,
          "column": 106
        },
        "end": {
          "line": 284,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10183,
      "end": 10184,
      "loc": {
        "start": {
          "line": 284,
          "column": 107
        },
        "end": {
          "line": 284,
          "column": 108
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10184,
      "end": 10192,
      "loc": {
        "start": {
          "line": 284,
          "column": 108
        },
        "end": {
          "line": 284,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10192,
      "end": 10193,
      "loc": {
        "start": {
          "line": 284,
          "column": 116
        },
        "end": {
          "line": 284,
          "column": 117
        }
      }
    },
    {
      "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": 10201,
      "end": 10203,
      "loc": {
        "start": {
          "line": 286,
          "column": 6
        },
        "end": {
          "line": 286,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10204,
      "end": 10205,
      "loc": {
        "start": {
          "line": 286,
          "column": 9
        },
        "end": {
          "line": 286,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 10205,
      "end": 10206,
      "loc": {
        "start": {
          "line": 286,
          "column": 10
        },
        "end": {
          "line": 286,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 10206,
      "end": 10221,
      "loc": {
        "start": {
          "line": 286,
          "column": 11
        },
        "end": {
          "line": 286,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10221,
      "end": 10222,
      "loc": {
        "start": {
          "line": 286,
          "column": 26
        },
        "end": {
          "line": 286,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10222,
      "end": 10230,
      "loc": {
        "start": {
          "line": 286,
          "column": 27
        },
        "end": {
          "line": 286,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10230,
      "end": 10231,
      "loc": {
        "start": {
          "line": 286,
          "column": 35
        },
        "end": {
          "line": 286,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 10232,
      "end": 10247,
      "loc": {
        "start": {
          "line": 286,
          "column": 37
        },
        "end": {
          "line": 286,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10247,
      "end": 10248,
      "loc": {
        "start": {
          "line": 286,
          "column": 52
        },
        "end": {
          "line": 286,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10248,
      "end": 10256,
      "loc": {
        "start": {
          "line": 286,
          "column": 53
        },
        "end": {
          "line": 286,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10257,
      "end": 10258,
      "loc": {
        "start": {
          "line": 286,
          "column": 62
        },
        "end": {
          "line": 286,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "CASCADE",
      "start": 10259,
      "end": 10268,
      "loc": {
        "start": {
          "line": 286,
          "column": 64
        },
        "end": {
          "line": 286,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10268,
      "end": 10269,
      "loc": {
        "start": {
          "line": 286,
          "column": 73
        },
        "end": {
          "line": 286,
          "column": 74
        }
      }
    },
    {
      "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": 10276,
      "end": 10278,
      "loc": {
        "start": {
          "line": 287,
          "column": 6
        },
        "end": {
          "line": 287,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10279,
      "end": 10280,
      "loc": {
        "start": {
          "line": 287,
          "column": 9
        },
        "end": {
          "line": 287,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 10280,
      "end": 10281,
      "loc": {
        "start": {
          "line": 287,
          "column": 10
        },
        "end": {
          "line": 287,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 10281,
      "end": 10296,
      "loc": {
        "start": {
          "line": 287,
          "column": 11
        },
        "end": {
          "line": 287,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10296,
      "end": 10297,
      "loc": {
        "start": {
          "line": 287,
          "column": 26
        },
        "end": {
          "line": 287,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10297,
      "end": 10305,
      "loc": {
        "start": {
          "line": 287,
          "column": 27
        },
        "end": {
          "line": 287,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10305,
      "end": 10306,
      "loc": {
        "start": {
          "line": 287,
          "column": 35
        },
        "end": {
          "line": 287,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 10307,
      "end": 10322,
      "loc": {
        "start": {
          "line": 287,
          "column": 37
        },
        "end": {
          "line": 287,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10322,
      "end": 10323,
      "loc": {
        "start": {
          "line": 287,
          "column": 52
        },
        "end": {
          "line": 287,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10323,
      "end": 10331,
      "loc": {
        "start": {
          "line": 287,
          "column": 53
        },
        "end": {
          "line": 287,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10332,
      "end": 10333,
      "loc": {
        "start": {
          "line": 287,
          "column": 62
        },
        "end": {
          "line": 287,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "CASCADE",
      "start": 10334,
      "end": 10343,
      "loc": {
        "start": {
          "line": 287,
          "column": 64
        },
        "end": {
          "line": 287,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10343,
      "end": 10344,
      "loc": {
        "start": {
          "line": 287,
          "column": 73
        },
        "end": {
          "line": 287,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10352,
      "end": 10367,
      "loc": {
        "start": {
          "line": 289,
          "column": 6
        },
        "end": {
          "line": 289,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10367,
      "end": 10368,
      "loc": {
        "start": {
          "line": 289,
          "column": 21
        },
        "end": {
          "line": 289,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "references",
      "start": 10368,
      "end": 10378,
      "loc": {
        "start": {
          "line": 289,
          "column": 22
        },
        "end": {
          "line": 289,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10379,
      "end": 10380,
      "loc": {
        "start": {
          "line": 289,
          "column": 33
        },
        "end": {
          "line": 289,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10381,
      "end": 10382,
      "loc": {
        "start": {
          "line": 289,
          "column": 35
        },
        "end": {
          "line": 289,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 10391,
      "end": 10396,
      "loc": {
        "start": {
          "line": 290,
          "column": 8
        },
        "end": {
          "line": 290,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10396,
      "end": 10397,
      "loc": {
        "start": {
          "line": 290,
          "column": 13
        },
        "end": {
          "line": 290,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 10398,
      "end": 10402,
      "loc": {
        "start": {
          "line": 290,
          "column": 15
        },
        "end": {
          "line": 290,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10402,
      "end": 10403,
      "loc": {
        "start": {
          "line": 290,
          "column": 19
        },
        "end": {
          "line": 290,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 10403,
      "end": 10409,
      "loc": {
        "start": {
          "line": 290,
          "column": 20
        },
        "end": {
          "line": 290,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10409,
      "end": 10410,
      "loc": {
        "start": {
          "line": 290,
          "column": 26
        },
        "end": {
          "line": 290,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "getTableName",
      "start": 10410,
      "end": 10422,
      "loc": {
        "start": {
          "line": 290,
          "column": 27
        },
        "end": {
          "line": 290,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10422,
      "end": 10423,
      "loc": {
        "start": {
          "line": 290,
          "column": 39
        },
        "end": {
          "line": 290,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10423,
      "end": 10424,
      "loc": {
        "start": {
          "line": 290,
          "column": 40
        },
        "end": {
          "line": 290,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10424,
      "end": 10425,
      "loc": {
        "start": {
          "line": 290,
          "column": 41
        },
        "end": {
          "line": 290,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "key",
      "start": 10434,
      "end": 10437,
      "loc": {
        "start": {
          "line": 291,
          "column": 8
        },
        "end": {
          "line": 291,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10437,
      "end": 10438,
      "loc": {
        "start": {
          "line": 291,
          "column": 11
        },
        "end": {
          "line": 291,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKeyField",
      "start": 10441,
      "end": 10455,
      "loc": {
        "start": {
          "line": 291,
          "column": 15
        },
        "end": {
          "line": 291,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10462,
      "end": 10463,
      "loc": {
        "start": {
          "line": 292,
          "column": 6
        },
        "end": {
          "line": 292,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10463,
      "end": 10464,
      "loc": {
        "start": {
          "line": 292,
          "column": 7
        },
        "end": {
          "line": 292,
          "column": 8
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " But the for target attribute the previously defined option is the priority (since it could've been set by another belongsToMany call)",
      "start": 10471,
      "end": 10607,
      "loc": {
        "start": {
          "line": 293,
          "column": 6
        },
        "end": {
          "line": 293,
          "column": 142
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10614,
      "end": 10629,
      "loc": {
        "start": {
          "line": 294,
          "column": 6
        },
        "end": {
          "line": 294,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10629,
      "end": 10630,
      "loc": {
        "start": {
          "line": 294,
          "column": 21
        },
        "end": {
          "line": 294,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10630,
      "end": 10638,
      "loc": {
        "start": {
          "line": 294,
          "column": 22
        },
        "end": {
          "line": 294,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10639,
      "end": 10640,
      "loc": {
        "start": {
          "line": 294,
          "column": 31
        },
        "end": {
          "line": 294,
          "column": 32
        }
      }
    },
    {
      "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": 10641,
      "end": 10645,
      "loc": {
        "start": {
          "line": 294,
          "column": 33
        },
        "end": {
          "line": 294,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10645,
      "end": 10646,
      "loc": {
        "start": {
          "line": 294,
          "column": 37
        },
        "end": {
          "line": 294,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 10646,
      "end": 10653,
      "loc": {
        "start": {
          "line": 294,
          "column": 38
        },
        "end": {
          "line": 294,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10653,
      "end": 10654,
      "loc": {
        "start": {
          "line": 294,
          "column": 45
        },
        "end": {
          "line": 294,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 10654,
      "end": 10659,
      "loc": {
        "start": {
          "line": 294,
          "column": 46
        },
        "end": {
          "line": 294,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10659,
      "end": 10660,
      "loc": {
        "start": {
          "line": 294,
          "column": 51
        },
        "end": {
          "line": 294,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 10660,
      "end": 10673,
      "loc": {
        "start": {
          "line": 294,
          "column": 52
        },
        "end": {
          "line": 294,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10673,
      "end": 10674,
      "loc": {
        "start": {
          "line": 294,
          "column": 65
        },
        "end": {
          "line": 294,
          "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": 10674,
      "end": 10678,
      "loc": {
        "start": {
          "line": 294,
          "column": 66
        },
        "end": {
          "line": 294,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10678,
      "end": 10679,
      "loc": {
        "start": {
          "line": 294,
          "column": 70
        },
        "end": {
          "line": 294,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 10679,
      "end": 10687,
      "loc": {
        "start": {
          "line": 294,
          "column": 71
        },
        "end": {
          "line": 294,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10687,
      "end": 10688,
      "loc": {
        "start": {
          "line": 294,
          "column": 79
        },
        "end": {
          "line": 294,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10688,
      "end": 10689,
      "loc": {
        "start": {
          "line": 294,
          "column": 80
        },
        "end": {
          "line": 294,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10689,
      "end": 10697,
      "loc": {
        "start": {
          "line": 294,
          "column": 81
        },
        "end": {
          "line": 294,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 10698,
      "end": 10700,
      "loc": {
        "start": {
          "line": 294,
          "column": 90
        },
        "end": {
          "line": 294,
          "column": 92
        }
      }
    },
    {
      "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": 10701,
      "end": 10705,
      "loc": {
        "start": {
          "line": 294,
          "column": 93
        },
        "end": {
          "line": 294,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10705,
      "end": 10706,
      "loc": {
        "start": {
          "line": 294,
          "column": 97
        },
        "end": {
          "line": 294,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10706,
      "end": 10713,
      "loc": {
        "start": {
          "line": 294,
          "column": 98
        },
        "end": {
          "line": 294,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10713,
      "end": 10714,
      "loc": {
        "start": {
          "line": 294,
          "column": 105
        },
        "end": {
          "line": 294,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10714,
      "end": 10722,
      "loc": {
        "start": {
          "line": 294,
          "column": 106
        },
        "end": {
          "line": 294,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10722,
      "end": 10723,
      "loc": {
        "start": {
          "line": 294,
          "column": 114
        },
        "end": {
          "line": 294,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10730,
      "end": 10745,
      "loc": {
        "start": {
          "line": 295,
          "column": 6
        },
        "end": {
          "line": 295,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10745,
      "end": 10746,
      "loc": {
        "start": {
          "line": 295,
          "column": 21
        },
        "end": {
          "line": 295,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10746,
      "end": 10754,
      "loc": {
        "start": {
          "line": 295,
          "column": 22
        },
        "end": {
          "line": 295,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10755,
      "end": 10756,
      "loc": {
        "start": {
          "line": 295,
          "column": 31
        },
        "end": {
          "line": 295,
          "column": 32
        }
      }
    },
    {
      "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": 10757,
      "end": 10761,
      "loc": {
        "start": {
          "line": 295,
          "column": 33
        },
        "end": {
          "line": 295,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10761,
      "end": 10762,
      "loc": {
        "start": {
          "line": 295,
          "column": 37
        },
        "end": {
          "line": 295,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 10762,
      "end": 10769,
      "loc": {
        "start": {
          "line": 295,
          "column": 38
        },
        "end": {
          "line": 295,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10769,
      "end": 10770,
      "loc": {
        "start": {
          "line": 295,
          "column": 45
        },
        "end": {
          "line": 295,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 10770,
      "end": 10775,
      "loc": {
        "start": {
          "line": 295,
          "column": 46
        },
        "end": {
          "line": 295,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10775,
      "end": 10776,
      "loc": {
        "start": {
          "line": 295,
          "column": 51
        },
        "end": {
          "line": 295,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 10776,
      "end": 10789,
      "loc": {
        "start": {
          "line": 295,
          "column": 52
        },
        "end": {
          "line": 295,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10789,
      "end": 10790,
      "loc": {
        "start": {
          "line": 295,
          "column": 65
        },
        "end": {
          "line": 295,
          "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": 10790,
      "end": 10794,
      "loc": {
        "start": {
          "line": 295,
          "column": 66
        },
        "end": {
          "line": 295,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10794,
      "end": 10795,
      "loc": {
        "start": {
          "line": 295,
          "column": 70
        },
        "end": {
          "line": 295,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 10795,
      "end": 10803,
      "loc": {
        "start": {
          "line": 295,
          "column": 71
        },
        "end": {
          "line": 295,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10803,
      "end": 10804,
      "loc": {
        "start": {
          "line": 295,
          "column": 79
        },
        "end": {
          "line": 295,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10804,
      "end": 10805,
      "loc": {
        "start": {
          "line": 295,
          "column": 80
        },
        "end": {
          "line": 295,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10805,
      "end": 10813,
      "loc": {
        "start": {
          "line": 295,
          "column": 81
        },
        "end": {
          "line": 295,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 10814,
      "end": 10816,
      "loc": {
        "start": {
          "line": 295,
          "column": 90
        },
        "end": {
          "line": 295,
          "column": 92
        }
      }
    },
    {
      "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": 10817,
      "end": 10821,
      "loc": {
        "start": {
          "line": 295,
          "column": 93
        },
        "end": {
          "line": 295,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10821,
      "end": 10822,
      "loc": {
        "start": {
          "line": 295,
          "column": 97
        },
        "end": {
          "line": 295,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 10822,
      "end": 10829,
      "loc": {
        "start": {
          "line": 295,
          "column": 98
        },
        "end": {
          "line": 295,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10829,
      "end": 10830,
      "loc": {
        "start": {
          "line": 295,
          "column": 105
        },
        "end": {
          "line": 295,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10830,
      "end": 10838,
      "loc": {
        "start": {
          "line": 295,
          "column": 106
        },
        "end": {
          "line": 295,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10838,
      "end": 10839,
      "loc": {
        "start": {
          "line": 295,
          "column": 114
        },
        "end": {
          "line": 295,
          "column": 115
        }
      }
    },
    {
      "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": 10847,
      "end": 10849,
      "loc": {
        "start": {
          "line": 297,
          "column": 6
        },
        "end": {
          "line": 297,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10850,
      "end": 10851,
      "loc": {
        "start": {
          "line": 297,
          "column": 9
        },
        "end": {
          "line": 297,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 10851,
      "end": 10852,
      "loc": {
        "start": {
          "line": 297,
          "column": 10
        },
        "end": {
          "line": 297,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10852,
      "end": 10867,
      "loc": {
        "start": {
          "line": 297,
          "column": 11
        },
        "end": {
          "line": 297,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10867,
      "end": 10868,
      "loc": {
        "start": {
          "line": 297,
          "column": 26
        },
        "end": {
          "line": 297,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10868,
      "end": 10876,
      "loc": {
        "start": {
          "line": 297,
          "column": 27
        },
        "end": {
          "line": 297,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10876,
      "end": 10877,
      "loc": {
        "start": {
          "line": 297,
          "column": 35
        },
        "end": {
          "line": 297,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10878,
      "end": 10893,
      "loc": {
        "start": {
          "line": 297,
          "column": 37
        },
        "end": {
          "line": 297,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10893,
      "end": 10894,
      "loc": {
        "start": {
          "line": 297,
          "column": 52
        },
        "end": {
          "line": 297,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onDelete",
      "start": 10894,
      "end": 10902,
      "loc": {
        "start": {
          "line": 297,
          "column": 53
        },
        "end": {
          "line": 297,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10903,
      "end": 10904,
      "loc": {
        "start": {
          "line": 297,
          "column": 62
        },
        "end": {
          "line": 297,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "CASCADE",
      "start": 10905,
      "end": 10914,
      "loc": {
        "start": {
          "line": 297,
          "column": 64
        },
        "end": {
          "line": 297,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10914,
      "end": 10915,
      "loc": {
        "start": {
          "line": 297,
          "column": 73
        },
        "end": {
          "line": 297,
          "column": 74
        }
      }
    },
    {
      "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": 10922,
      "end": 10924,
      "loc": {
        "start": {
          "line": 298,
          "column": 6
        },
        "end": {
          "line": 298,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10925,
      "end": 10926,
      "loc": {
        "start": {
          "line": 298,
          "column": 9
        },
        "end": {
          "line": 298,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 10926,
      "end": 10927,
      "loc": {
        "start": {
          "line": 298,
          "column": 10
        },
        "end": {
          "line": 298,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10927,
      "end": 10942,
      "loc": {
        "start": {
          "line": 298,
          "column": 11
        },
        "end": {
          "line": 298,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10942,
      "end": 10943,
      "loc": {
        "start": {
          "line": 298,
          "column": 26
        },
        "end": {
          "line": 298,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10943,
      "end": 10951,
      "loc": {
        "start": {
          "line": 298,
          "column": 27
        },
        "end": {
          "line": 298,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10951,
      "end": 10952,
      "loc": {
        "start": {
          "line": 298,
          "column": 35
        },
        "end": {
          "line": 298,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 10953,
      "end": 10968,
      "loc": {
        "start": {
          "line": 298,
          "column": 37
        },
        "end": {
          "line": 298,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10968,
      "end": 10969,
      "loc": {
        "start": {
          "line": 298,
          "column": 52
        },
        "end": {
          "line": 298,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "onUpdate",
      "start": 10969,
      "end": 10977,
      "loc": {
        "start": {
          "line": 298,
          "column": 53
        },
        "end": {
          "line": 298,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 10978,
      "end": 10979,
      "loc": {
        "start": {
          "line": 298,
          "column": 62
        },
        "end": {
          "line": 298,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "CASCADE",
      "start": 10980,
      "end": 10989,
      "loc": {
        "start": {
          "line": 298,
          "column": 64
        },
        "end": {
          "line": 298,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 10989,
      "end": 10990,
      "loc": {
        "start": {
          "line": 298,
          "column": 73
        },
        "end": {
          "line": 298,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 10995,
      "end": 10996,
      "loc": {
        "start": {
          "line": 299,
          "column": 4
        },
        "end": {
          "line": 299,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11002,
      "end": 11006,
      "loc": {
        "start": {
          "line": 301,
          "column": 4
        },
        "end": {
          "line": 301,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11006,
      "end": 11007,
      "loc": {
        "start": {
          "line": 301,
          "column": 8
        },
        "end": {
          "line": 301,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11007,
      "end": 11014,
      "loc": {
        "start": {
          "line": 301,
          "column": 9
        },
        "end": {
          "line": 301,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11014,
      "end": 11015,
      "loc": {
        "start": {
          "line": 301,
          "column": 16
        },
        "end": {
          "line": 301,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11015,
      "end": 11020,
      "loc": {
        "start": {
          "line": 301,
          "column": 17
        },
        "end": {
          "line": 301,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11020,
      "end": 11021,
      "loc": {
        "start": {
          "line": 301,
          "column": 22
        },
        "end": {
          "line": 301,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11021,
      "end": 11034,
      "loc": {
        "start": {
          "line": 301,
          "column": 23
        },
        "end": {
          "line": 301,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11034,
      "end": 11035,
      "loc": {
        "start": {
          "line": 301,
          "column": 36
        },
        "end": {
          "line": 301,
          "column": 37
        }
      }
    },
    {
      "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": 11035,
      "end": 11039,
      "loc": {
        "start": {
          "line": 301,
          "column": 37
        },
        "end": {
          "line": 301,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11039,
      "end": 11040,
      "loc": {
        "start": {
          "line": 301,
          "column": 41
        },
        "end": {
          "line": 301,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11040,
      "end": 11050,
      "loc": {
        "start": {
          "line": 301,
          "column": 42
        },
        "end": {
          "line": 301,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11050,
      "end": 11051,
      "loc": {
        "start": {
          "line": 301,
          "column": 52
        },
        "end": {
          "line": 301,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11052,
      "end": 11053,
      "loc": {
        "start": {
          "line": 301,
          "column": 54
        },
        "end": {
          "line": 301,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 11054,
      "end": 11055,
      "loc": {
        "start": {
          "line": 301,
          "column": 56
        },
        "end": {
          "line": 301,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11055,
      "end": 11056,
      "loc": {
        "start": {
          "line": 301,
          "column": 57
        },
        "end": {
          "line": 301,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "extend",
      "start": 11056,
      "end": 11062,
      "loc": {
        "start": {
          "line": 301,
          "column": 58
        },
        "end": {
          "line": 301,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11062,
      "end": 11063,
      "loc": {
        "start": {
          "line": 301,
          "column": 64
        },
        "end": {
          "line": 301,
          "column": 65
        }
      }
    },
    {
      "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": 11063,
      "end": 11067,
      "loc": {
        "start": {
          "line": 301,
          "column": 65
        },
        "end": {
          "line": 301,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11067,
      "end": 11068,
      "loc": {
        "start": {
          "line": 301,
          "column": 69
        },
        "end": {
          "line": 301,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11068,
      "end": 11075,
      "loc": {
        "start": {
          "line": 301,
          "column": 70
        },
        "end": {
          "line": 301,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11075,
      "end": 11076,
      "loc": {
        "start": {
          "line": 301,
          "column": 77
        },
        "end": {
          "line": 301,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11076,
      "end": 11081,
      "loc": {
        "start": {
          "line": 301,
          "column": 78
        },
        "end": {
          "line": 301,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11081,
      "end": 11082,
      "loc": {
        "start": {
          "line": 301,
          "column": 83
        },
        "end": {
          "line": 301,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11082,
      "end": 11095,
      "loc": {
        "start": {
          "line": 301,
          "column": 84
        },
        "end": {
          "line": 301,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11095,
      "end": 11096,
      "loc": {
        "start": {
          "line": 301,
          "column": 97
        },
        "end": {
          "line": 301,
          "column": 98
        }
      }
    },
    {
      "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": 11096,
      "end": 11100,
      "loc": {
        "start": {
          "line": 301,
          "column": 98
        },
        "end": {
          "line": 301,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11100,
      "end": 11101,
      "loc": {
        "start": {
          "line": 301,
          "column": 102
        },
        "end": {
          "line": 301,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11101,
      "end": 11111,
      "loc": {
        "start": {
          "line": 301,
          "column": 103
        },
        "end": {
          "line": 301,
          "column": 113
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11111,
      "end": 11112,
      "loc": {
        "start": {
          "line": 301,
          "column": 113
        },
        "end": {
          "line": 301,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11112,
      "end": 11113,
      "loc": {
        "start": {
          "line": 301,
          "column": 114
        },
        "end": {
          "line": 301,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceAttribute",
      "start": 11114,
      "end": 11129,
      "loc": {
        "start": {
          "line": 301,
          "column": 116
        },
        "end": {
          "line": 301,
          "column": 131
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11129,
      "end": 11130,
      "loc": {
        "start": {
          "line": 301,
          "column": 131
        },
        "end": {
          "line": 301,
          "column": 132
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11130,
      "end": 11131,
      "loc": {
        "start": {
          "line": 301,
          "column": 132
        },
        "end": {
          "line": 301,
          "column": 133
        }
      }
    },
    {
      "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": 11136,
      "end": 11140,
      "loc": {
        "start": {
          "line": 302,
          "column": 4
        },
        "end": {
          "line": 302,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11140,
      "end": 11141,
      "loc": {
        "start": {
          "line": 302,
          "column": 8
        },
        "end": {
          "line": 302,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11141,
      "end": 11148,
      "loc": {
        "start": {
          "line": 302,
          "column": 9
        },
        "end": {
          "line": 302,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11148,
      "end": 11149,
      "loc": {
        "start": {
          "line": 302,
          "column": 16
        },
        "end": {
          "line": 302,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11149,
      "end": 11154,
      "loc": {
        "start": {
          "line": 302,
          "column": 17
        },
        "end": {
          "line": 302,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11154,
      "end": 11155,
      "loc": {
        "start": {
          "line": 302,
          "column": 22
        },
        "end": {
          "line": 302,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11155,
      "end": 11168,
      "loc": {
        "start": {
          "line": 302,
          "column": 23
        },
        "end": {
          "line": 302,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11168,
      "end": 11169,
      "loc": {
        "start": {
          "line": 302,
          "column": 36
        },
        "end": {
          "line": 302,
          "column": 37
        }
      }
    },
    {
      "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": 11169,
      "end": 11173,
      "loc": {
        "start": {
          "line": 302,
          "column": 37
        },
        "end": {
          "line": 302,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11173,
      "end": 11174,
      "loc": {
        "start": {
          "line": 302,
          "column": 41
        },
        "end": {
          "line": 302,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11174,
      "end": 11182,
      "loc": {
        "start": {
          "line": 302,
          "column": 42
        },
        "end": {
          "line": 302,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11182,
      "end": 11183,
      "loc": {
        "start": {
          "line": 302,
          "column": 50
        },
        "end": {
          "line": 302,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11184,
      "end": 11185,
      "loc": {
        "start": {
          "line": 302,
          "column": 52
        },
        "end": {
          "line": 302,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 11186,
      "end": 11187,
      "loc": {
        "start": {
          "line": 302,
          "column": 54
        },
        "end": {
          "line": 302,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11187,
      "end": 11188,
      "loc": {
        "start": {
          "line": 302,
          "column": 55
        },
        "end": {
          "line": 302,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "extend",
      "start": 11188,
      "end": 11194,
      "loc": {
        "start": {
          "line": 302,
          "column": 56
        },
        "end": {
          "line": 302,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11194,
      "end": 11195,
      "loc": {
        "start": {
          "line": 302,
          "column": 62
        },
        "end": {
          "line": 302,
          "column": 63
        }
      }
    },
    {
      "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": 11195,
      "end": 11199,
      "loc": {
        "start": {
          "line": 302,
          "column": 63
        },
        "end": {
          "line": 302,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11199,
      "end": 11200,
      "loc": {
        "start": {
          "line": 302,
          "column": 67
        },
        "end": {
          "line": 302,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11200,
      "end": 11207,
      "loc": {
        "start": {
          "line": 302,
          "column": 68
        },
        "end": {
          "line": 302,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11207,
      "end": 11208,
      "loc": {
        "start": {
          "line": 302,
          "column": 75
        },
        "end": {
          "line": 302,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11208,
      "end": 11213,
      "loc": {
        "start": {
          "line": 302,
          "column": 76
        },
        "end": {
          "line": 302,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11213,
      "end": 11214,
      "loc": {
        "start": {
          "line": 302,
          "column": 81
        },
        "end": {
          "line": 302,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11214,
      "end": 11227,
      "loc": {
        "start": {
          "line": 302,
          "column": 82
        },
        "end": {
          "line": 302,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11227,
      "end": 11228,
      "loc": {
        "start": {
          "line": 302,
          "column": 95
        },
        "end": {
          "line": 302,
          "column": 96
        }
      }
    },
    {
      "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": 11228,
      "end": 11232,
      "loc": {
        "start": {
          "line": 302,
          "column": 96
        },
        "end": {
          "line": 302,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11232,
      "end": 11233,
      "loc": {
        "start": {
          "line": 302,
          "column": 100
        },
        "end": {
          "line": 302,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11233,
      "end": 11241,
      "loc": {
        "start": {
          "line": 302,
          "column": 101
        },
        "end": {
          "line": 302,
          "column": 109
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11241,
      "end": 11242,
      "loc": {
        "start": {
          "line": 302,
          "column": 109
        },
        "end": {
          "line": 302,
          "column": 110
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11242,
      "end": 11243,
      "loc": {
        "start": {
          "line": 302,
          "column": 110
        },
        "end": {
          "line": 302,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetAttribute",
      "start": 11244,
      "end": 11259,
      "loc": {
        "start": {
          "line": 302,
          "column": 112
        },
        "end": {
          "line": 302,
          "column": 127
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11259,
      "end": 11260,
      "loc": {
        "start": {
          "line": 302,
          "column": 127
        },
        "end": {
          "line": 302,
          "column": 128
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11260,
      "end": 11261,
      "loc": {
        "start": {
          "line": 302,
          "column": 128
        },
        "end": {
          "line": 302,
          "column": 129
        }
      }
    },
    {
      "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": 11267,
      "end": 11271,
      "loc": {
        "start": {
          "line": 304,
          "column": 4
        },
        "end": {
          "line": 304,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11271,
      "end": 11272,
      "loc": {
        "start": {
          "line": 304,
          "column": 8
        },
        "end": {
          "line": 304,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifierField",
      "start": 11272,
      "end": 11287,
      "loc": {
        "start": {
          "line": 304,
          "column": 9
        },
        "end": {
          "line": 304,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11288,
      "end": 11289,
      "loc": {
        "start": {
          "line": 304,
          "column": 25
        },
        "end": {
          "line": 304,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11290,
      "end": 11294,
      "loc": {
        "start": {
          "line": 304,
          "column": 27
        },
        "end": {
          "line": 304,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11294,
      "end": 11295,
      "loc": {
        "start": {
          "line": 304,
          "column": 31
        },
        "end": {
          "line": 304,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11295,
      "end": 11302,
      "loc": {
        "start": {
          "line": 304,
          "column": 32
        },
        "end": {
          "line": 304,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11302,
      "end": 11303,
      "loc": {
        "start": {
          "line": 304,
          "column": 39
        },
        "end": {
          "line": 304,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11303,
      "end": 11308,
      "loc": {
        "start": {
          "line": 304,
          "column": 40
        },
        "end": {
          "line": 304,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11308,
      "end": 11309,
      "loc": {
        "start": {
          "line": 304,
          "column": 45
        },
        "end": {
          "line": 304,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11309,
      "end": 11322,
      "loc": {
        "start": {
          "line": 304,
          "column": 46
        },
        "end": {
          "line": 304,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11322,
      "end": 11323,
      "loc": {
        "start": {
          "line": 304,
          "column": 59
        },
        "end": {
          "line": 304,
          "column": 60
        }
      }
    },
    {
      "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": 11323,
      "end": 11327,
      "loc": {
        "start": {
          "line": 304,
          "column": 60
        },
        "end": {
          "line": 304,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11327,
      "end": 11328,
      "loc": {
        "start": {
          "line": 304,
          "column": 64
        },
        "end": {
          "line": 304,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11328,
      "end": 11338,
      "loc": {
        "start": {
          "line": 304,
          "column": 65
        },
        "end": {
          "line": 304,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11338,
      "end": 11339,
      "loc": {
        "start": {
          "line": 304,
          "column": 75
        },
        "end": {
          "line": 304,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11339,
      "end": 11340,
      "loc": {
        "start": {
          "line": 304,
          "column": 76
        },
        "end": {
          "line": 304,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field",
      "start": 11340,
      "end": 11345,
      "loc": {
        "start": {
          "line": 304,
          "column": 77
        },
        "end": {
          "line": 304,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 11346,
      "end": 11348,
      "loc": {
        "start": {
          "line": 304,
          "column": 83
        },
        "end": {
          "line": 304,
          "column": 85
        }
      }
    },
    {
      "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": 11349,
      "end": 11353,
      "loc": {
        "start": {
          "line": 304,
          "column": 86
        },
        "end": {
          "line": 304,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11353,
      "end": 11354,
      "loc": {
        "start": {
          "line": 304,
          "column": 90
        },
        "end": {
          "line": 304,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11354,
      "end": 11364,
      "loc": {
        "start": {
          "line": 304,
          "column": 91
        },
        "end": {
          "line": 304,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11364,
      "end": 11365,
      "loc": {
        "start": {
          "line": 304,
          "column": 101
        },
        "end": {
          "line": 304,
          "column": 102
        }
      }
    },
    {
      "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": 11370,
      "end": 11374,
      "loc": {
        "start": {
          "line": 305,
          "column": 4
        },
        "end": {
          "line": 305,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11374,
      "end": 11375,
      "loc": {
        "start": {
          "line": 305,
          "column": 8
        },
        "end": {
          "line": 305,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifierField",
      "start": 11375,
      "end": 11397,
      "loc": {
        "start": {
          "line": 305,
          "column": 9
        },
        "end": {
          "line": 305,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11398,
      "end": 11399,
      "loc": {
        "start": {
          "line": 305,
          "column": 32
        },
        "end": {
          "line": 305,
          "column": 33
        }
      }
    },
    {
      "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": 11400,
      "end": 11404,
      "loc": {
        "start": {
          "line": 305,
          "column": 34
        },
        "end": {
          "line": 305,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11404,
      "end": 11405,
      "loc": {
        "start": {
          "line": 305,
          "column": 38
        },
        "end": {
          "line": 305,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11405,
      "end": 11412,
      "loc": {
        "start": {
          "line": 305,
          "column": 39
        },
        "end": {
          "line": 305,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11412,
      "end": 11413,
      "loc": {
        "start": {
          "line": 305,
          "column": 46
        },
        "end": {
          "line": 305,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11413,
      "end": 11418,
      "loc": {
        "start": {
          "line": 305,
          "column": 47
        },
        "end": {
          "line": 305,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11418,
      "end": 11419,
      "loc": {
        "start": {
          "line": 305,
          "column": 52
        },
        "end": {
          "line": 305,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11419,
      "end": 11432,
      "loc": {
        "start": {
          "line": 305,
          "column": 53
        },
        "end": {
          "line": 305,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11432,
      "end": 11433,
      "loc": {
        "start": {
          "line": 305,
          "column": 66
        },
        "end": {
          "line": 305,
          "column": 67
        }
      }
    },
    {
      "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": 11433,
      "end": 11437,
      "loc": {
        "start": {
          "line": 305,
          "column": 67
        },
        "end": {
          "line": 305,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11437,
      "end": 11438,
      "loc": {
        "start": {
          "line": 305,
          "column": 71
        },
        "end": {
          "line": 305,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11438,
      "end": 11446,
      "loc": {
        "start": {
          "line": 305,
          "column": 72
        },
        "end": {
          "line": 305,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11446,
      "end": 11447,
      "loc": {
        "start": {
          "line": 305,
          "column": 80
        },
        "end": {
          "line": 305,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11447,
      "end": 11448,
      "loc": {
        "start": {
          "line": 305,
          "column": 81
        },
        "end": {
          "line": 305,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field",
      "start": 11448,
      "end": 11453,
      "loc": {
        "start": {
          "line": 305,
          "column": 82
        },
        "end": {
          "line": 305,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 11454,
      "end": 11456,
      "loc": {
        "start": {
          "line": 305,
          "column": 88
        },
        "end": {
          "line": 305,
          "column": 90
        }
      }
    },
    {
      "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": 11457,
      "end": 11461,
      "loc": {
        "start": {
          "line": 305,
          "column": 91
        },
        "end": {
          "line": 305,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11461,
      "end": 11462,
      "loc": {
        "start": {
          "line": 305,
          "column": 95
        },
        "end": {
          "line": 305,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11462,
      "end": 11470,
      "loc": {
        "start": {
          "line": 305,
          "column": 96
        },
        "end": {
          "line": 305,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11470,
      "end": 11471,
      "loc": {
        "start": {
          "line": 305,
          "column": 104
        },
        "end": {
          "line": 305,
          "column": 105
        }
      }
    },
    {
      "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": 11477,
      "end": 11479,
      "loc": {
        "start": {
          "line": 307,
          "column": 4
        },
        "end": {
          "line": 307,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11480,
      "end": 11481,
      "loc": {
        "start": {
          "line": 307,
          "column": 7
        },
        "end": {
          "line": 307,
          "column": 8
        }
      }
    },
    {
      "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": 11481,
      "end": 11485,
      "loc": {
        "start": {
          "line": 307,
          "column": 8
        },
        "end": {
          "line": 307,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11485,
      "end": 11486,
      "loc": {
        "start": {
          "line": 307,
          "column": 12
        },
        "end": {
          "line": 307,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 11486,
      "end": 11492,
      "loc": {
        "start": {
          "line": 307,
          "column": 13
        },
        "end": {
          "line": 307,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 11493,
      "end": 11495,
      "loc": {
        "start": {
          "line": 307,
          "column": 20
        },
        "end": {
          "line": 307,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 11496,
      "end": 11497,
      "loc": {
        "start": {
          "line": 307,
          "column": 23
        },
        "end": {
          "line": 307,
          "column": 24
        }
      }
    },
    {
      "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": 11497,
      "end": 11501,
      "loc": {
        "start": {
          "line": 307,
          "column": 24
        },
        "end": {
          "line": 307,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11501,
      "end": 11502,
      "loc": {
        "start": {
          "line": 307,
          "column": 28
        },
        "end": {
          "line": 307,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 11502,
      "end": 11508,
      "loc": {
        "start": {
          "line": 307,
          "column": 29
        },
        "end": {
          "line": 307,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11508,
      "end": 11509,
      "loc": {
        "start": {
          "line": 307,
          "column": 35
        },
        "end": {
          "line": 307,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifierField",
      "start": 11509,
      "end": 11531,
      "loc": {
        "start": {
          "line": 307,
          "column": 36
        },
        "end": {
          "line": 307,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11531,
      "end": 11532,
      "loc": {
        "start": {
          "line": 307,
          "column": 58
        },
        "end": {
          "line": 307,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11533,
      "end": 11534,
      "loc": {
        "start": {
          "line": 307,
          "column": 60
        },
        "end": {
          "line": 307,
          "column": 61
        }
      }
    },
    {
      "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": 11541,
      "end": 11545,
      "loc": {
        "start": {
          "line": 308,
          "column": 6
        },
        "end": {
          "line": 308,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11545,
      "end": 11546,
      "loc": {
        "start": {
          "line": 308,
          "column": 10
        },
        "end": {
          "line": 308,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 11546,
      "end": 11552,
      "loc": {
        "start": {
          "line": 308,
          "column": 11
        },
        "end": {
          "line": 308,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11552,
      "end": 11553,
      "loc": {
        "start": {
          "line": 308,
          "column": 17
        },
        "end": {
          "line": 308,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifierField",
      "start": 11553,
      "end": 11575,
      "loc": {
        "start": {
          "line": 308,
          "column": 18
        },
        "end": {
          "line": 308,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11576,
      "end": 11577,
      "loc": {
        "start": {
          "line": 308,
          "column": 41
        },
        "end": {
          "line": 308,
          "column": 42
        }
      }
    },
    {
      "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": 11578,
      "end": 11582,
      "loc": {
        "start": {
          "line": 308,
          "column": 43
        },
        "end": {
          "line": 308,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11582,
      "end": 11583,
      "loc": {
        "start": {
          "line": 308,
          "column": 47
        },
        "end": {
          "line": 308,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11583,
      "end": 11590,
      "loc": {
        "start": {
          "line": 308,
          "column": 48
        },
        "end": {
          "line": 308,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11590,
      "end": 11591,
      "loc": {
        "start": {
          "line": 308,
          "column": 55
        },
        "end": {
          "line": 308,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11591,
      "end": 11596,
      "loc": {
        "start": {
          "line": 308,
          "column": 56
        },
        "end": {
          "line": 308,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11596,
      "end": 11597,
      "loc": {
        "start": {
          "line": 308,
          "column": 61
        },
        "end": {
          "line": 308,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "rawAttributes",
      "start": 11597,
      "end": 11610,
      "loc": {
        "start": {
          "line": 308,
          "column": 62
        },
        "end": {
          "line": 308,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11610,
      "end": 11611,
      "loc": {
        "start": {
          "line": 308,
          "column": 75
        },
        "end": {
          "line": 308,
          "column": 76
        }
      }
    },
    {
      "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": 11611,
      "end": 11615,
      "loc": {
        "start": {
          "line": 308,
          "column": 76
        },
        "end": {
          "line": 308,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11615,
      "end": 11616,
      "loc": {
        "start": {
          "line": 308,
          "column": 80
        },
        "end": {
          "line": 308,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 11616,
      "end": 11622,
      "loc": {
        "start": {
          "line": 308,
          "column": 81
        },
        "end": {
          "line": 308,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11622,
      "end": 11623,
      "loc": {
        "start": {
          "line": 308,
          "column": 87
        },
        "end": {
          "line": 308,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11623,
      "end": 11631,
      "loc": {
        "start": {
          "line": 308,
          "column": 88
        },
        "end": {
          "line": 308,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11631,
      "end": 11632,
      "loc": {
        "start": {
          "line": 308,
          "column": 96
        },
        "end": {
          "line": 308,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11632,
      "end": 11633,
      "loc": {
        "start": {
          "line": 308,
          "column": 97
        },
        "end": {
          "line": 308,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "field",
      "start": 11633,
      "end": 11638,
      "loc": {
        "start": {
          "line": 308,
          "column": 98
        },
        "end": {
          "line": 308,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 11639,
      "end": 11641,
      "loc": {
        "start": {
          "line": 308,
          "column": 104
        },
        "end": {
          "line": 308,
          "column": 106
        }
      }
    },
    {
      "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": 11642,
      "end": 11646,
      "loc": {
        "start": {
          "line": 308,
          "column": 107
        },
        "end": {
          "line": 308,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11646,
      "end": 11647,
      "loc": {
        "start": {
          "line": 308,
          "column": 111
        },
        "end": {
          "line": 308,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 11647,
      "end": 11653,
      "loc": {
        "start": {
          "line": 308,
          "column": 112
        },
        "end": {
          "line": 308,
          "column": 118
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11653,
      "end": 11654,
      "loc": {
        "start": {
          "line": 308,
          "column": 118
        },
        "end": {
          "line": 308,
          "column": 119
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 11654,
      "end": 11662,
      "loc": {
        "start": {
          "line": 308,
          "column": 119
        },
        "end": {
          "line": 308,
          "column": 127
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11662,
      "end": 11663,
      "loc": {
        "start": {
          "line": 308,
          "column": 127
        },
        "end": {
          "line": 308,
          "column": 128
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11668,
      "end": 11669,
      "loc": {
        "start": {
          "line": 309,
          "column": 4
        },
        "end": {
          "line": 309,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11675,
      "end": 11679,
      "loc": {
        "start": {
          "line": 311,
          "column": 4
        },
        "end": {
          "line": 311,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11679,
      "end": 11680,
      "loc": {
        "start": {
          "line": 311,
          "column": 8
        },
        "end": {
          "line": 311,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11680,
      "end": 11687,
      "loc": {
        "start": {
          "line": 311,
          "column": 9
        },
        "end": {
          "line": 311,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11687,
      "end": 11688,
      "loc": {
        "start": {
          "line": 311,
          "column": 16
        },
        "end": {
          "line": 311,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11688,
      "end": 11693,
      "loc": {
        "start": {
          "line": 311,
          "column": 17
        },
        "end": {
          "line": 311,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11693,
      "end": 11694,
      "loc": {
        "start": {
          "line": 311,
          "column": 22
        },
        "end": {
          "line": 311,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "refreshAttributes",
      "start": 11694,
      "end": 11711,
      "loc": {
        "start": {
          "line": 311,
          "column": 23
        },
        "end": {
          "line": 311,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11711,
      "end": 11712,
      "loc": {
        "start": {
          "line": 311,
          "column": 40
        },
        "end": {
          "line": 311,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11712,
      "end": 11713,
      "loc": {
        "start": {
          "line": 311,
          "column": 41
        },
        "end": {
          "line": 311,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11713,
      "end": 11714,
      "loc": {
        "start": {
          "line": 311,
          "column": 42
        },
        "end": {
          "line": 311,
          "column": 43
        }
      }
    },
    {
      "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": 11720,
      "end": 11724,
      "loc": {
        "start": {
          "line": 313,
          "column": 4
        },
        "end": {
          "line": 313,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11724,
      "end": 11725,
      "loc": {
        "start": {
          "line": 313,
          "column": 8
        },
        "end": {
          "line": 313,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toSource",
      "start": 11725,
      "end": 11733,
      "loc": {
        "start": {
          "line": 313,
          "column": 9
        },
        "end": {
          "line": 313,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11734,
      "end": 11735,
      "loc": {
        "start": {
          "line": 313,
          "column": 18
        },
        "end": {
          "line": 313,
          "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": 11736,
      "end": 11739,
      "loc": {
        "start": {
          "line": 313,
          "column": 20
        },
        "end": {
          "line": 313,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsTo",
      "start": 11740,
      "end": 11749,
      "loc": {
        "start": {
          "line": 313,
          "column": 24
        },
        "end": {
          "line": 313,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11749,
      "end": 11750,
      "loc": {
        "start": {
          "line": 313,
          "column": 33
        },
        "end": {
          "line": 313,
          "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": 11750,
      "end": 11754,
      "loc": {
        "start": {
          "line": 313,
          "column": 34
        },
        "end": {
          "line": 313,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11754,
      "end": 11755,
      "loc": {
        "start": {
          "line": 313,
          "column": 38
        },
        "end": {
          "line": 313,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11755,
      "end": 11762,
      "loc": {
        "start": {
          "line": 313,
          "column": 39
        },
        "end": {
          "line": 313,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11762,
      "end": 11763,
      "loc": {
        "start": {
          "line": 313,
          "column": 46
        },
        "end": {
          "line": 313,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11763,
      "end": 11768,
      "loc": {
        "start": {
          "line": 313,
          "column": 47
        },
        "end": {
          "line": 313,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11768,
      "end": 11769,
      "loc": {
        "start": {
          "line": 313,
          "column": 52
        },
        "end": {
          "line": 313,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11770,
      "end": 11774,
      "loc": {
        "start": {
          "line": 313,
          "column": 54
        },
        "end": {
          "line": 313,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11774,
      "end": 11775,
      "loc": {
        "start": {
          "line": 313,
          "column": 58
        },
        "end": {
          "line": 313,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 11775,
      "end": 11781,
      "loc": {
        "start": {
          "line": 313,
          "column": 59
        },
        "end": {
          "line": 313,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11781,
      "end": 11782,
      "loc": {
        "start": {
          "line": 313,
          "column": 65
        },
        "end": {
          "line": 313,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11783,
      "end": 11784,
      "loc": {
        "start": {
          "line": 313,
          "column": 67
        },
        "end": {
          "line": 313,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11791,
      "end": 11801,
      "loc": {
        "start": {
          "line": 314,
          "column": 6
        },
        "end": {
          "line": 314,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11801,
      "end": 11802,
      "loc": {
        "start": {
          "line": 314,
          "column": 16
        },
        "end": {
          "line": 314,
          "column": 17
        }
      }
    },
    {
      "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": 11803,
      "end": 11807,
      "loc": {
        "start": {
          "line": 314,
          "column": 18
        },
        "end": {
          "line": 314,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11807,
      "end": 11808,
      "loc": {
        "start": {
          "line": 314,
          "column": 22
        },
        "end": {
          "line": 314,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11808,
      "end": 11818,
      "loc": {
        "start": {
          "line": 314,
          "column": 23
        },
        "end": {
          "line": 314,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11823,
      "end": 11824,
      "loc": {
        "start": {
          "line": 315,
          "column": 4
        },
        "end": {
          "line": 315,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11824,
      "end": 11825,
      "loc": {
        "start": {
          "line": 315,
          "column": 5
        },
        "end": {
          "line": 315,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11825,
      "end": 11826,
      "loc": {
        "start": {
          "line": 315,
          "column": 6
        },
        "end": {
          "line": 315,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11831,
      "end": 11835,
      "loc": {
        "start": {
          "line": 316,
          "column": 4
        },
        "end": {
          "line": 316,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11835,
      "end": 11836,
      "loc": {
        "start": {
          "line": 316,
          "column": 8
        },
        "end": {
          "line": 316,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "manyFromSource",
      "start": 11836,
      "end": 11850,
      "loc": {
        "start": {
          "line": 316,
          "column": 9
        },
        "end": {
          "line": 316,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11851,
      "end": 11852,
      "loc": {
        "start": {
          "line": 316,
          "column": 24
        },
        "end": {
          "line": 316,
          "column": 25
        }
      }
    },
    {
      "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": 11853,
      "end": 11856,
      "loc": {
        "start": {
          "line": 316,
          "column": 26
        },
        "end": {
          "line": 316,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasMany",
      "start": 11857,
      "end": 11864,
      "loc": {
        "start": {
          "line": 316,
          "column": 30
        },
        "end": {
          "line": 316,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11864,
      "end": 11865,
      "loc": {
        "start": {
          "line": 316,
          "column": 37
        },
        "end": {
          "line": 316,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11865,
      "end": 11869,
      "loc": {
        "start": {
          "line": 316,
          "column": 38
        },
        "end": {
          "line": 316,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11869,
      "end": 11870,
      "loc": {
        "start": {
          "line": 316,
          "column": 42
        },
        "end": {
          "line": 316,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 11870,
      "end": 11876,
      "loc": {
        "start": {
          "line": 316,
          "column": 43
        },
        "end": {
          "line": 316,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11876,
      "end": 11877,
      "loc": {
        "start": {
          "line": 316,
          "column": 49
        },
        "end": {
          "line": 316,
          "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": 11878,
      "end": 11882,
      "loc": {
        "start": {
          "line": 316,
          "column": 51
        },
        "end": {
          "line": 316,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11882,
      "end": 11883,
      "loc": {
        "start": {
          "line": 316,
          "column": 55
        },
        "end": {
          "line": 316,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11883,
      "end": 11890,
      "loc": {
        "start": {
          "line": 316,
          "column": 56
        },
        "end": {
          "line": 316,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11890,
      "end": 11891,
      "loc": {
        "start": {
          "line": 316,
          "column": 63
        },
        "end": {
          "line": 316,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 11891,
      "end": 11896,
      "loc": {
        "start": {
          "line": 316,
          "column": 64
        },
        "end": {
          "line": 316,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11896,
      "end": 11897,
      "loc": {
        "start": {
          "line": 316,
          "column": 69
        },
        "end": {
          "line": 316,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11898,
      "end": 11899,
      "loc": {
        "start": {
          "line": 316,
          "column": 71
        },
        "end": {
          "line": 316,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11906,
      "end": 11916,
      "loc": {
        "start": {
          "line": 317,
          "column": 6
        },
        "end": {
          "line": 317,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11916,
      "end": 11917,
      "loc": {
        "start": {
          "line": 317,
          "column": 16
        },
        "end": {
          "line": 317,
          "column": 17
        }
      }
    },
    {
      "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": 11918,
      "end": 11922,
      "loc": {
        "start": {
          "line": 317,
          "column": 18
        },
        "end": {
          "line": 317,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11922,
      "end": 11923,
      "loc": {
        "start": {
          "line": 317,
          "column": 22
        },
        "end": {
          "line": 317,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 11923,
      "end": 11933,
      "loc": {
        "start": {
          "line": 317,
          "column": 23
        },
        "end": {
          "line": 317,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11938,
      "end": 11939,
      "loc": {
        "start": {
          "line": 318,
          "column": 4
        },
        "end": {
          "line": 318,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11939,
      "end": 11940,
      "loc": {
        "start": {
          "line": 318,
          "column": 5
        },
        "end": {
          "line": 318,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11940,
      "end": 11941,
      "loc": {
        "start": {
          "line": 318,
          "column": 6
        },
        "end": {
          "line": 318,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 11946,
      "end": 11950,
      "loc": {
        "start": {
          "line": 319,
          "column": 4
        },
        "end": {
          "line": 319,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11950,
      "end": 11951,
      "loc": {
        "start": {
          "line": 319,
          "column": 8
        },
        "end": {
          "line": 319,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oneFromSource",
      "start": 11951,
      "end": 11964,
      "loc": {
        "start": {
          "line": 319,
          "column": 9
        },
        "end": {
          "line": 319,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 11965,
      "end": 11966,
      "loc": {
        "start": {
          "line": 319,
          "column": 23
        },
        "end": {
          "line": 319,
          "column": 24
        }
      }
    },
    {
      "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": 11967,
      "end": 11970,
      "loc": {
        "start": {
          "line": 319,
          "column": 25
        },
        "end": {
          "line": 319,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasOne",
      "start": 11971,
      "end": 11977,
      "loc": {
        "start": {
          "line": 319,
          "column": 29
        },
        "end": {
          "line": 319,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 11977,
      "end": 11978,
      "loc": {
        "start": {
          "line": 319,
          "column": 35
        },
        "end": {
          "line": 319,
          "column": 36
        }
      }
    },
    {
      "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": 11978,
      "end": 11982,
      "loc": {
        "start": {
          "line": 319,
          "column": 36
        },
        "end": {
          "line": 319,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11982,
      "end": 11983,
      "loc": {
        "start": {
          "line": 319,
          "column": 40
        },
        "end": {
          "line": 319,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 11983,
      "end": 11989,
      "loc": {
        "start": {
          "line": 319,
          "column": 41
        },
        "end": {
          "line": 319,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11989,
      "end": 11990,
      "loc": {
        "start": {
          "line": 319,
          "column": 47
        },
        "end": {
          "line": 319,
          "column": 48
        }
      }
    },
    {
      "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": 11991,
      "end": 11995,
      "loc": {
        "start": {
          "line": 319,
          "column": 49
        },
        "end": {
          "line": 319,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 11995,
      "end": 11996,
      "loc": {
        "start": {
          "line": 319,
          "column": 53
        },
        "end": {
          "line": 319,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 11996,
      "end": 12003,
      "loc": {
        "start": {
          "line": 319,
          "column": 54
        },
        "end": {
          "line": 319,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12003,
      "end": 12004,
      "loc": {
        "start": {
          "line": 319,
          "column": 61
        },
        "end": {
          "line": 319,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12004,
      "end": 12009,
      "loc": {
        "start": {
          "line": 319,
          "column": 62
        },
        "end": {
          "line": 319,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12009,
      "end": 12010,
      "loc": {
        "start": {
          "line": 319,
          "column": 67
        },
        "end": {
          "line": 319,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12011,
      "end": 12012,
      "loc": {
        "start": {
          "line": 319,
          "column": 69
        },
        "end": {
          "line": 319,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12019,
      "end": 12029,
      "loc": {
        "start": {
          "line": 320,
          "column": 6
        },
        "end": {
          "line": 320,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12029,
      "end": 12030,
      "loc": {
        "start": {
          "line": 320,
          "column": 16
        },
        "end": {
          "line": 320,
          "column": 17
        }
      }
    },
    {
      "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": 12031,
      "end": 12035,
      "loc": {
        "start": {
          "line": 320,
          "column": 18
        },
        "end": {
          "line": 320,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12035,
      "end": 12036,
      "loc": {
        "start": {
          "line": 320,
          "column": 22
        },
        "end": {
          "line": 320,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12036,
      "end": 12046,
      "loc": {
        "start": {
          "line": 320,
          "column": 23
        },
        "end": {
          "line": 320,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12046,
      "end": 12047,
      "loc": {
        "start": {
          "line": 320,
          "column": 33
        },
        "end": {
          "line": 320,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 12054,
      "end": 12056,
      "loc": {
        "start": {
          "line": 321,
          "column": 6
        },
        "end": {
          "line": 321,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12056,
      "end": 12057,
      "loc": {
        "start": {
          "line": 321,
          "column": 8
        },
        "end": {
          "line": 321,
          "column": 9
        }
      }
    },
    {
      "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": 12058,
      "end": 12062,
      "loc": {
        "start": {
          "line": 321,
          "column": 10
        },
        "end": {
          "line": 321,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12062,
      "end": 12063,
      "loc": {
        "start": {
          "line": 321,
          "column": 14
        },
        "end": {
          "line": 321,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12063,
      "end": 12070,
      "loc": {
        "start": {
          "line": 321,
          "column": 15
        },
        "end": {
          "line": 321,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12070,
      "end": 12071,
      "loc": {
        "start": {
          "line": 321,
          "column": 22
        },
        "end": {
          "line": 321,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12071,
      "end": 12076,
      "loc": {
        "start": {
          "line": 321,
          "column": 23
        },
        "end": {
          "line": 321,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12076,
      "end": 12077,
      "loc": {
        "start": {
          "line": 321,
          "column": 28
        },
        "end": {
          "line": 321,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 12077,
      "end": 12081,
      "loc": {
        "start": {
          "line": 321,
          "column": 29
        },
        "end": {
          "line": 321,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12086,
      "end": 12087,
      "loc": {
        "start": {
          "line": 322,
          "column": 4
        },
        "end": {
          "line": 322,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12087,
      "end": 12088,
      "loc": {
        "start": {
          "line": 322,
          "column": 5
        },
        "end": {
          "line": 322,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12088,
      "end": 12089,
      "loc": {
        "start": {
          "line": 322,
          "column": 6
        },
        "end": {
          "line": 322,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12095,
      "end": 12099,
      "loc": {
        "start": {
          "line": 324,
          "column": 4
        },
        "end": {
          "line": 324,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12099,
      "end": 12100,
      "loc": {
        "start": {
          "line": 324,
          "column": 8
        },
        "end": {
          "line": 324,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toTarget",
      "start": 12100,
      "end": 12108,
      "loc": {
        "start": {
          "line": 324,
          "column": 9
        },
        "end": {
          "line": 324,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12109,
      "end": 12110,
      "loc": {
        "start": {
          "line": 324,
          "column": 18
        },
        "end": {
          "line": 324,
          "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": 12111,
      "end": 12114,
      "loc": {
        "start": {
          "line": 324,
          "column": 20
        },
        "end": {
          "line": 324,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsTo",
      "start": 12115,
      "end": 12124,
      "loc": {
        "start": {
          "line": 324,
          "column": 24
        },
        "end": {
          "line": 324,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12124,
      "end": 12125,
      "loc": {
        "start": {
          "line": 324,
          "column": 33
        },
        "end": {
          "line": 324,
          "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": 12125,
      "end": 12129,
      "loc": {
        "start": {
          "line": 324,
          "column": 34
        },
        "end": {
          "line": 324,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12129,
      "end": 12130,
      "loc": {
        "start": {
          "line": 324,
          "column": 38
        },
        "end": {
          "line": 324,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12130,
      "end": 12137,
      "loc": {
        "start": {
          "line": 324,
          "column": 39
        },
        "end": {
          "line": 324,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12137,
      "end": 12138,
      "loc": {
        "start": {
          "line": 324,
          "column": 46
        },
        "end": {
          "line": 324,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12138,
      "end": 12143,
      "loc": {
        "start": {
          "line": 324,
          "column": 47
        },
        "end": {
          "line": 324,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12143,
      "end": 12144,
      "loc": {
        "start": {
          "line": 324,
          "column": 52
        },
        "end": {
          "line": 324,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12145,
      "end": 12149,
      "loc": {
        "start": {
          "line": 324,
          "column": 54
        },
        "end": {
          "line": 324,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12149,
      "end": 12150,
      "loc": {
        "start": {
          "line": 324,
          "column": 58
        },
        "end": {
          "line": 324,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 12150,
      "end": 12156,
      "loc": {
        "start": {
          "line": 324,
          "column": 59
        },
        "end": {
          "line": 324,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12156,
      "end": 12157,
      "loc": {
        "start": {
          "line": 324,
          "column": 65
        },
        "end": {
          "line": 324,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12158,
      "end": 12159,
      "loc": {
        "start": {
          "line": 324,
          "column": 67
        },
        "end": {
          "line": 324,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12166,
      "end": 12176,
      "loc": {
        "start": {
          "line": 325,
          "column": 6
        },
        "end": {
          "line": 325,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12176,
      "end": 12177,
      "loc": {
        "start": {
          "line": 325,
          "column": 16
        },
        "end": {
          "line": 325,
          "column": 17
        }
      }
    },
    {
      "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": 12178,
      "end": 12182,
      "loc": {
        "start": {
          "line": 325,
          "column": 18
        },
        "end": {
          "line": 325,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12182,
      "end": 12183,
      "loc": {
        "start": {
          "line": 325,
          "column": 22
        },
        "end": {
          "line": 325,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 12183,
      "end": 12191,
      "loc": {
        "start": {
          "line": 325,
          "column": 23
        },
        "end": {
          "line": 325,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12196,
      "end": 12197,
      "loc": {
        "start": {
          "line": 326,
          "column": 4
        },
        "end": {
          "line": 326,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12197,
      "end": 12198,
      "loc": {
        "start": {
          "line": 326,
          "column": 5
        },
        "end": {
          "line": 326,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12198,
      "end": 12199,
      "loc": {
        "start": {
          "line": 326,
          "column": 6
        },
        "end": {
          "line": 326,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12204,
      "end": 12208,
      "loc": {
        "start": {
          "line": 327,
          "column": 4
        },
        "end": {
          "line": 327,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12208,
      "end": 12209,
      "loc": {
        "start": {
          "line": 327,
          "column": 8
        },
        "end": {
          "line": 327,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "manyFromTarget",
      "start": 12209,
      "end": 12223,
      "loc": {
        "start": {
          "line": 327,
          "column": 9
        },
        "end": {
          "line": 327,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12224,
      "end": 12225,
      "loc": {
        "start": {
          "line": 327,
          "column": 24
        },
        "end": {
          "line": 327,
          "column": 25
        }
      }
    },
    {
      "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": 12226,
      "end": 12229,
      "loc": {
        "start": {
          "line": 327,
          "column": 26
        },
        "end": {
          "line": 327,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasMany",
      "start": 12230,
      "end": 12237,
      "loc": {
        "start": {
          "line": 327,
          "column": 30
        },
        "end": {
          "line": 327,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12237,
      "end": 12238,
      "loc": {
        "start": {
          "line": 327,
          "column": 37
        },
        "end": {
          "line": 327,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12238,
      "end": 12242,
      "loc": {
        "start": {
          "line": 327,
          "column": 38
        },
        "end": {
          "line": 327,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12242,
      "end": 12243,
      "loc": {
        "start": {
          "line": 327,
          "column": 42
        },
        "end": {
          "line": 327,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 12243,
      "end": 12249,
      "loc": {
        "start": {
          "line": 327,
          "column": 43
        },
        "end": {
          "line": 327,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12249,
      "end": 12250,
      "loc": {
        "start": {
          "line": 327,
          "column": 49
        },
        "end": {
          "line": 327,
          "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": 12251,
      "end": 12255,
      "loc": {
        "start": {
          "line": 327,
          "column": 51
        },
        "end": {
          "line": 327,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12255,
      "end": 12256,
      "loc": {
        "start": {
          "line": 327,
          "column": 55
        },
        "end": {
          "line": 327,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12256,
      "end": 12263,
      "loc": {
        "start": {
          "line": 327,
          "column": 56
        },
        "end": {
          "line": 327,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12263,
      "end": 12264,
      "loc": {
        "start": {
          "line": 327,
          "column": 63
        },
        "end": {
          "line": 327,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12264,
      "end": 12269,
      "loc": {
        "start": {
          "line": 327,
          "column": 64
        },
        "end": {
          "line": 327,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12269,
      "end": 12270,
      "loc": {
        "start": {
          "line": 327,
          "column": 69
        },
        "end": {
          "line": 327,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12271,
      "end": 12272,
      "loc": {
        "start": {
          "line": 327,
          "column": 71
        },
        "end": {
          "line": 327,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12279,
      "end": 12289,
      "loc": {
        "start": {
          "line": 328,
          "column": 6
        },
        "end": {
          "line": 328,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12289,
      "end": 12290,
      "loc": {
        "start": {
          "line": 328,
          "column": 16
        },
        "end": {
          "line": 328,
          "column": 17
        }
      }
    },
    {
      "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": 12291,
      "end": 12295,
      "loc": {
        "start": {
          "line": 328,
          "column": 18
        },
        "end": {
          "line": 328,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12295,
      "end": 12296,
      "loc": {
        "start": {
          "line": 328,
          "column": 22
        },
        "end": {
          "line": 328,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 12296,
      "end": 12304,
      "loc": {
        "start": {
          "line": 328,
          "column": 23
        },
        "end": {
          "line": 328,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12309,
      "end": 12310,
      "loc": {
        "start": {
          "line": 329,
          "column": 4
        },
        "end": {
          "line": 329,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12310,
      "end": 12311,
      "loc": {
        "start": {
          "line": 329,
          "column": 5
        },
        "end": {
          "line": 329,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12311,
      "end": 12312,
      "loc": {
        "start": {
          "line": 329,
          "column": 6
        },
        "end": {
          "line": 329,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12317,
      "end": 12321,
      "loc": {
        "start": {
          "line": 330,
          "column": 4
        },
        "end": {
          "line": 330,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12321,
      "end": 12322,
      "loc": {
        "start": {
          "line": 330,
          "column": 8
        },
        "end": {
          "line": 330,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oneFromTarget",
      "start": 12322,
      "end": 12335,
      "loc": {
        "start": {
          "line": 330,
          "column": 9
        },
        "end": {
          "line": 330,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12336,
      "end": 12337,
      "loc": {
        "start": {
          "line": 330,
          "column": 23
        },
        "end": {
          "line": 330,
          "column": 24
        }
      }
    },
    {
      "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": 12338,
      "end": 12341,
      "loc": {
        "start": {
          "line": 330,
          "column": 25
        },
        "end": {
          "line": 330,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasOne",
      "start": 12342,
      "end": 12348,
      "loc": {
        "start": {
          "line": 330,
          "column": 29
        },
        "end": {
          "line": 330,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12348,
      "end": 12349,
      "loc": {
        "start": {
          "line": 330,
          "column": 35
        },
        "end": {
          "line": 330,
          "column": 36
        }
      }
    },
    {
      "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": 12349,
      "end": 12353,
      "loc": {
        "start": {
          "line": 330,
          "column": 36
        },
        "end": {
          "line": 330,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12353,
      "end": 12354,
      "loc": {
        "start": {
          "line": 330,
          "column": 40
        },
        "end": {
          "line": 330,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 12354,
      "end": 12360,
      "loc": {
        "start": {
          "line": 330,
          "column": 41
        },
        "end": {
          "line": 330,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12360,
      "end": 12361,
      "loc": {
        "start": {
          "line": 330,
          "column": 47
        },
        "end": {
          "line": 330,
          "column": 48
        }
      }
    },
    {
      "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": 12362,
      "end": 12366,
      "loc": {
        "start": {
          "line": 330,
          "column": 49
        },
        "end": {
          "line": 330,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12366,
      "end": 12367,
      "loc": {
        "start": {
          "line": 330,
          "column": 53
        },
        "end": {
          "line": 330,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12367,
      "end": 12374,
      "loc": {
        "start": {
          "line": 330,
          "column": 54
        },
        "end": {
          "line": 330,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12374,
      "end": 12375,
      "loc": {
        "start": {
          "line": 330,
          "column": 61
        },
        "end": {
          "line": 330,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12375,
      "end": 12380,
      "loc": {
        "start": {
          "line": 330,
          "column": 62
        },
        "end": {
          "line": 330,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12380,
      "end": 12381,
      "loc": {
        "start": {
          "line": 330,
          "column": 67
        },
        "end": {
          "line": 330,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12382,
      "end": 12383,
      "loc": {
        "start": {
          "line": 330,
          "column": 69
        },
        "end": {
          "line": 330,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12390,
      "end": 12400,
      "loc": {
        "start": {
          "line": 331,
          "column": 6
        },
        "end": {
          "line": 331,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12400,
      "end": 12401,
      "loc": {
        "start": {
          "line": 331,
          "column": 16
        },
        "end": {
          "line": 331,
          "column": 17
        }
      }
    },
    {
      "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": 12402,
      "end": 12406,
      "loc": {
        "start": {
          "line": 331,
          "column": 18
        },
        "end": {
          "line": 331,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12406,
      "end": 12407,
      "loc": {
        "start": {
          "line": 331,
          "column": 22
        },
        "end": {
          "line": 331,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 12407,
      "end": 12415,
      "loc": {
        "start": {
          "line": 331,
          "column": 23
        },
        "end": {
          "line": 331,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12415,
      "end": 12416,
      "loc": {
        "start": {
          "line": 331,
          "column": 31
        },
        "end": {
          "line": 331,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 12423,
      "end": 12425,
      "loc": {
        "start": {
          "line": 332,
          "column": 6
        },
        "end": {
          "line": 332,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12425,
      "end": 12426,
      "loc": {
        "start": {
          "line": 332,
          "column": 8
        },
        "end": {
          "line": 332,
          "column": 9
        }
      }
    },
    {
      "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": 12427,
      "end": 12431,
      "loc": {
        "start": {
          "line": 332,
          "column": 10
        },
        "end": {
          "line": 332,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12431,
      "end": 12432,
      "loc": {
        "start": {
          "line": 332,
          "column": 14
        },
        "end": {
          "line": 332,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12432,
      "end": 12439,
      "loc": {
        "start": {
          "line": 332,
          "column": 15
        },
        "end": {
          "line": 332,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12439,
      "end": 12440,
      "loc": {
        "start": {
          "line": 332,
          "column": 22
        },
        "end": {
          "line": 332,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12440,
      "end": 12445,
      "loc": {
        "start": {
          "line": 332,
          "column": 23
        },
        "end": {
          "line": 332,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12445,
      "end": 12446,
      "loc": {
        "start": {
          "line": 332,
          "column": 28
        },
        "end": {
          "line": 332,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 12446,
      "end": 12450,
      "loc": {
        "start": {
          "line": 332,
          "column": 29
        },
        "end": {
          "line": 332,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12455,
      "end": 12456,
      "loc": {
        "start": {
          "line": 333,
          "column": 4
        },
        "end": {
          "line": 333,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12456,
      "end": 12457,
      "loc": {
        "start": {
          "line": 333,
          "column": 5
        },
        "end": {
          "line": 333,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12457,
      "end": 12458,
      "loc": {
        "start": {
          "line": 333,
          "column": 6
        },
        "end": {
          "line": 333,
          "column": 7
        }
      }
    },
    {
      "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": 12464,
      "end": 12466,
      "loc": {
        "start": {
          "line": 335,
          "column": 4
        },
        "end": {
          "line": 335,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12467,
      "end": 12468,
      "loc": {
        "start": {
          "line": 335,
          "column": 7
        },
        "end": {
          "line": 335,
          "column": 8
        }
      }
    },
    {
      "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": 12468,
      "end": 12472,
      "loc": {
        "start": {
          "line": 335,
          "column": 8
        },
        "end": {
          "line": 335,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12472,
      "end": 12473,
      "loc": {
        "start": {
          "line": 335,
          "column": 12
        },
        "end": {
          "line": 335,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12473,
      "end": 12479,
      "loc": {
        "start": {
          "line": 335,
          "column": 13
        },
        "end": {
          "line": 335,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 12480,
      "end": 12482,
      "loc": {
        "start": {
          "line": 335,
          "column": 20
        },
        "end": {
          "line": 335,
          "column": 22
        }
      }
    },
    {
      "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": 12483,
      "end": 12487,
      "loc": {
        "start": {
          "line": 335,
          "column": 23
        },
        "end": {
          "line": 335,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12487,
      "end": 12488,
      "loc": {
        "start": {
          "line": 335,
          "column": 27
        },
        "end": {
          "line": 335,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12488,
      "end": 12494,
      "loc": {
        "start": {
          "line": 335,
          "column": 28
        },
        "end": {
          "line": 335,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12494,
      "end": 12495,
      "loc": {
        "start": {
          "line": 335,
          "column": 34
        },
        "end": {
          "line": 335,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKeyDefault",
      "start": 12495,
      "end": 12510,
      "loc": {
        "start": {
          "line": 335,
          "column": 35
        },
        "end": {
          "line": 335,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12510,
      "end": 12511,
      "loc": {
        "start": {
          "line": 335,
          "column": 50
        },
        "end": {
          "line": 335,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12512,
      "end": 12513,
      "loc": {
        "start": {
          "line": 335,
          "column": 52
        },
        "end": {
          "line": 335,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12520,
      "end": 12524,
      "loc": {
        "start": {
          "line": 336,
          "column": 6
        },
        "end": {
          "line": 336,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12524,
      "end": 12525,
      "loc": {
        "start": {
          "line": 336,
          "column": 10
        },
        "end": {
          "line": 336,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12525,
      "end": 12531,
      "loc": {
        "start": {
          "line": 336,
          "column": 11
        },
        "end": {
          "line": 336,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12531,
      "end": 12532,
      "loc": {
        "start": {
          "line": 336,
          "column": 17
        },
        "end": {
          "line": 336,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toTarget",
      "start": 12532,
      "end": 12540,
      "loc": {
        "start": {
          "line": 336,
          "column": 18
        },
        "end": {
          "line": 336,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12541,
      "end": 12542,
      "loc": {
        "start": {
          "line": 336,
          "column": 27
        },
        "end": {
          "line": 336,
          "column": 28
        }
      }
    },
    {
      "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": 12543,
      "end": 12546,
      "loc": {
        "start": {
          "line": 336,
          "column": 29
        },
        "end": {
          "line": 336,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsTo",
      "start": 12547,
      "end": 12556,
      "loc": {
        "start": {
          "line": 336,
          "column": 33
        },
        "end": {
          "line": 336,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12556,
      "end": 12557,
      "loc": {
        "start": {
          "line": 336,
          "column": 42
        },
        "end": {
          "line": 336,
          "column": 43
        }
      }
    },
    {
      "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": 12557,
      "end": 12561,
      "loc": {
        "start": {
          "line": 336,
          "column": 43
        },
        "end": {
          "line": 336,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12561,
      "end": 12562,
      "loc": {
        "start": {
          "line": 336,
          "column": 47
        },
        "end": {
          "line": 336,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12562,
      "end": 12568,
      "loc": {
        "start": {
          "line": 336,
          "column": 48
        },
        "end": {
          "line": 336,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12568,
      "end": 12569,
      "loc": {
        "start": {
          "line": 336,
          "column": 54
        },
        "end": {
          "line": 336,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12569,
      "end": 12576,
      "loc": {
        "start": {
          "line": 336,
          "column": 55
        },
        "end": {
          "line": 336,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12576,
      "end": 12577,
      "loc": {
        "start": {
          "line": 336,
          "column": 62
        },
        "end": {
          "line": 336,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12577,
      "end": 12582,
      "loc": {
        "start": {
          "line": 336,
          "column": 63
        },
        "end": {
          "line": 336,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12582,
      "end": 12583,
      "loc": {
        "start": {
          "line": 336,
          "column": 68
        },
        "end": {
          "line": 336,
          "column": 69
        }
      }
    },
    {
      "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": 12584,
      "end": 12588,
      "loc": {
        "start": {
          "line": 336,
          "column": 70
        },
        "end": {
          "line": 336,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12588,
      "end": 12589,
      "loc": {
        "start": {
          "line": 336,
          "column": 74
        },
        "end": {
          "line": 336,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12589,
      "end": 12595,
      "loc": {
        "start": {
          "line": 336,
          "column": 75
        },
        "end": {
          "line": 336,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12595,
      "end": 12596,
      "loc": {
        "start": {
          "line": 336,
          "column": 81
        },
        "end": {
          "line": 336,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 12596,
      "end": 12602,
      "loc": {
        "start": {
          "line": 336,
          "column": 82
        },
        "end": {
          "line": 336,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12602,
      "end": 12603,
      "loc": {
        "start": {
          "line": 336,
          "column": 88
        },
        "end": {
          "line": 336,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12604,
      "end": 12605,
      "loc": {
        "start": {
          "line": 336,
          "column": 90
        },
        "end": {
          "line": 336,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12614,
      "end": 12624,
      "loc": {
        "start": {
          "line": 337,
          "column": 8
        },
        "end": {
          "line": 337,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12624,
      "end": 12625,
      "loc": {
        "start": {
          "line": 337,
          "column": 18
        },
        "end": {
          "line": 337,
          "column": 19
        }
      }
    },
    {
      "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": 12626,
      "end": 12630,
      "loc": {
        "start": {
          "line": 337,
          "column": 20
        },
        "end": {
          "line": 337,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12630,
      "end": 12631,
      "loc": {
        "start": {
          "line": 337,
          "column": 24
        },
        "end": {
          "line": 337,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12631,
      "end": 12637,
      "loc": {
        "start": {
          "line": 337,
          "column": 25
        },
        "end": {
          "line": 337,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12637,
      "end": 12638,
      "loc": {
        "start": {
          "line": 337,
          "column": 31
        },
        "end": {
          "line": 337,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 12638,
      "end": 12646,
      "loc": {
        "start": {
          "line": 337,
          "column": 32
        },
        "end": {
          "line": 337,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12653,
      "end": 12654,
      "loc": {
        "start": {
          "line": 338,
          "column": 6
        },
        "end": {
          "line": 338,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12654,
      "end": 12655,
      "loc": {
        "start": {
          "line": 338,
          "column": 7
        },
        "end": {
          "line": 338,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12655,
      "end": 12656,
      "loc": {
        "start": {
          "line": 338,
          "column": 8
        },
        "end": {
          "line": 338,
          "column": 9
        }
      }
    },
    {
      "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": 12664,
      "end": 12668,
      "loc": {
        "start": {
          "line": 340,
          "column": 6
        },
        "end": {
          "line": 340,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12668,
      "end": 12669,
      "loc": {
        "start": {
          "line": 340,
          "column": 10
        },
        "end": {
          "line": 340,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12669,
      "end": 12675,
      "loc": {
        "start": {
          "line": 340,
          "column": 11
        },
        "end": {
          "line": 340,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12675,
      "end": 12676,
      "loc": {
        "start": {
          "line": 340,
          "column": 17
        },
        "end": {
          "line": 340,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oneFromTarget",
      "start": 12676,
      "end": 12689,
      "loc": {
        "start": {
          "line": 340,
          "column": 18
        },
        "end": {
          "line": 340,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12690,
      "end": 12691,
      "loc": {
        "start": {
          "line": 340,
          "column": 32
        },
        "end": {
          "line": 340,
          "column": 33
        }
      }
    },
    {
      "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": 12692,
      "end": 12695,
      "loc": {
        "start": {
          "line": 340,
          "column": 34
        },
        "end": {
          "line": 340,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "HasOne",
      "start": 12696,
      "end": 12702,
      "loc": {
        "start": {
          "line": 340,
          "column": 38
        },
        "end": {
          "line": 340,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12702,
      "end": 12703,
      "loc": {
        "start": {
          "line": 340,
          "column": 44
        },
        "end": {
          "line": 340,
          "column": 45
        }
      }
    },
    {
      "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": 12703,
      "end": 12707,
      "loc": {
        "start": {
          "line": 340,
          "column": 45
        },
        "end": {
          "line": 340,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12707,
      "end": 12708,
      "loc": {
        "start": {
          "line": 340,
          "column": 49
        },
        "end": {
          "line": 340,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12708,
      "end": 12714,
      "loc": {
        "start": {
          "line": 340,
          "column": 50
        },
        "end": {
          "line": 340,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12714,
      "end": 12715,
      "loc": {
        "start": {
          "line": 340,
          "column": 56
        },
        "end": {
          "line": 340,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 12715,
      "end": 12721,
      "loc": {
        "start": {
          "line": 340,
          "column": 57
        },
        "end": {
          "line": 340,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12721,
      "end": 12722,
      "loc": {
        "start": {
          "line": 340,
          "column": 63
        },
        "end": {
          "line": 340,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12723,
      "end": 12727,
      "loc": {
        "start": {
          "line": 340,
          "column": 65
        },
        "end": {
          "line": 340,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12727,
      "end": 12728,
      "loc": {
        "start": {
          "line": 340,
          "column": 69
        },
        "end": {
          "line": 340,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12728,
      "end": 12734,
      "loc": {
        "start": {
          "line": 340,
          "column": 70
        },
        "end": {
          "line": 340,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12734,
      "end": 12735,
      "loc": {
        "start": {
          "line": 340,
          "column": 76
        },
        "end": {
          "line": 340,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12735,
      "end": 12742,
      "loc": {
        "start": {
          "line": 340,
          "column": 77
        },
        "end": {
          "line": 340,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12742,
      "end": 12743,
      "loc": {
        "start": {
          "line": 340,
          "column": 84
        },
        "end": {
          "line": 340,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12743,
      "end": 12748,
      "loc": {
        "start": {
          "line": 340,
          "column": 85
        },
        "end": {
          "line": 340,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12748,
      "end": 12749,
      "loc": {
        "start": {
          "line": 340,
          "column": 90
        },
        "end": {
          "line": 340,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12750,
      "end": 12751,
      "loc": {
        "start": {
          "line": 340,
          "column": 92
        },
        "end": {
          "line": 340,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 12760,
      "end": 12770,
      "loc": {
        "start": {
          "line": 341,
          "column": 8
        },
        "end": {
          "line": 341,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12770,
      "end": 12771,
      "loc": {
        "start": {
          "line": 341,
          "column": 18
        },
        "end": {
          "line": 341,
          "column": 19
        }
      }
    },
    {
      "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": 12772,
      "end": 12776,
      "loc": {
        "start": {
          "line": 341,
          "column": 20
        },
        "end": {
          "line": 341,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12776,
      "end": 12777,
      "loc": {
        "start": {
          "line": 341,
          "column": 24
        },
        "end": {
          "line": 341,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12777,
      "end": 12783,
      "loc": {
        "start": {
          "line": 341,
          "column": 25
        },
        "end": {
          "line": 341,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12783,
      "end": 12784,
      "loc": {
        "start": {
          "line": 341,
          "column": 31
        },
        "end": {
          "line": 341,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "otherKey",
      "start": 12784,
      "end": 12792,
      "loc": {
        "start": {
          "line": 341,
          "column": 32
        },
        "end": {
          "line": 341,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12792,
      "end": 12793,
      "loc": {
        "start": {
          "line": 341,
          "column": 40
        },
        "end": {
          "line": 341,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "as",
      "start": 12802,
      "end": 12804,
      "loc": {
        "start": {
          "line": 342,
          "column": 8
        },
        "end": {
          "line": 342,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12804,
      "end": 12805,
      "loc": {
        "start": {
          "line": 342,
          "column": 10
        },
        "end": {
          "line": 342,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 12806,
      "end": 12810,
      "loc": {
        "start": {
          "line": 342,
          "column": 12
        },
        "end": {
          "line": 342,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12810,
      "end": 12811,
      "loc": {
        "start": {
          "line": 342,
          "column": 16
        },
        "end": {
          "line": 342,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "paired",
      "start": 12811,
      "end": 12817,
      "loc": {
        "start": {
          "line": 342,
          "column": 17
        },
        "end": {
          "line": 342,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12817,
      "end": 12818,
      "loc": {
        "start": {
          "line": 342,
          "column": 23
        },
        "end": {
          "line": 342,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 12818,
      "end": 12825,
      "loc": {
        "start": {
          "line": 342,
          "column": 24
        },
        "end": {
          "line": 342,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12825,
      "end": 12826,
      "loc": {
        "start": {
          "line": 342,
          "column": 31
        },
        "end": {
          "line": 342,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 12826,
      "end": 12831,
      "loc": {
        "start": {
          "line": 342,
          "column": 32
        },
        "end": {
          "line": 342,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12831,
      "end": 12832,
      "loc": {
        "start": {
          "line": 342,
          "column": 37
        },
        "end": {
          "line": 342,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 12832,
      "end": 12836,
      "loc": {
        "start": {
          "line": 342,
          "column": 38
        },
        "end": {
          "line": 342,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12843,
      "end": 12844,
      "loc": {
        "start": {
          "line": 343,
          "column": 6
        },
        "end": {
          "line": 343,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12844,
      "end": 12845,
      "loc": {
        "start": {
          "line": 343,
          "column": 7
        },
        "end": {
          "line": 343,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12845,
      "end": 12846,
      "loc": {
        "start": {
          "line": 343,
          "column": 8
        },
        "end": {
          "line": 343,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12851,
      "end": 12852,
      "loc": {
        "start": {
          "line": 344,
          "column": 4
        },
        "end": {
          "line": 344,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Helpers",
      "start": 12858,
      "end": 12865,
      "loc": {
        "start": {
          "line": 346,
          "column": 4
        },
        "end": {
          "line": 346,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12865,
      "end": 12866,
      "loc": {
        "start": {
          "line": 346,
          "column": 11
        },
        "end": {
          "line": 346,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "checkNamingCollision",
      "start": 12866,
      "end": 12886,
      "loc": {
        "start": {
          "line": 346,
          "column": 12
        },
        "end": {
          "line": 346,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12886,
      "end": 12887,
      "loc": {
        "start": {
          "line": 346,
          "column": 32
        },
        "end": {
          "line": 346,
          "column": 33
        }
      }
    },
    {
      "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": 12887,
      "end": 12891,
      "loc": {
        "start": {
          "line": 346,
          "column": 33
        },
        "end": {
          "line": 346,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12891,
      "end": 12892,
      "loc": {
        "start": {
          "line": 346,
          "column": 37
        },
        "end": {
          "line": 346,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12892,
      "end": 12893,
      "loc": {
        "start": {
          "line": 346,
          "column": 38
        },
        "end": {
          "line": 346,
          "column": 39
        }
      }
    },
    {
      "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": 12899,
      "end": 12905,
      "loc": {
        "start": {
          "line": 348,
          "column": 4
        },
        "end": {
          "line": 348,
          "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": 12906,
      "end": 12910,
      "loc": {
        "start": {
          "line": 348,
          "column": 11
        },
        "end": {
          "line": 348,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12910,
      "end": 12911,
      "loc": {
        "start": {
          "line": 348,
          "column": 15
        },
        "end": {
          "line": 348,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12914,
      "end": 12915,
      "loc": {
        "start": {
          "line": 349,
          "column": 2
        },
        "end": {
          "line": 349,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "mixin",
      "start": 12919,
      "end": 12924,
      "loc": {
        "start": {
          "line": 351,
          "column": 2
        },
        "end": {
          "line": 351,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12924,
      "end": 12925,
      "loc": {
        "start": {
          "line": 351,
          "column": 7
        },
        "end": {
          "line": 351,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 12925,
      "end": 12928,
      "loc": {
        "start": {
          "line": 351,
          "column": 8
        },
        "end": {
          "line": 351,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12928,
      "end": 12929,
      "loc": {
        "start": {
          "line": 351,
          "column": 11
        },
        "end": {
          "line": 351,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 12930,
      "end": 12931,
      "loc": {
        "start": {
          "line": 351,
          "column": 13
        },
        "end": {
          "line": 351,
          "column": 14
        }
      }
    },
    {
      "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": 12936,
      "end": 12941,
      "loc": {
        "start": {
          "line": 352,
          "column": 4
        },
        "end": {
          "line": 352,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "methods",
      "start": 12942,
      "end": 12949,
      "loc": {
        "start": {
          "line": 352,
          "column": 10
        },
        "end": {
          "line": 352,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 12950,
      "end": 12951,
      "loc": {
        "start": {
          "line": 352,
          "column": 18
        },
        "end": {
          "line": 352,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12952,
      "end": 12953,
      "loc": {
        "start": {
          "line": 352,
          "column": 20
        },
        "end": {
          "line": 352,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "get",
      "start": 12953,
      "end": 12958,
      "loc": {
        "start": {
          "line": 352,
          "column": 21
        },
        "end": {
          "line": 352,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12958,
      "end": 12959,
      "loc": {
        "start": {
          "line": 352,
          "column": 26
        },
        "end": {
          "line": 352,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "count",
      "start": 12960,
      "end": 12967,
      "loc": {
        "start": {
          "line": 352,
          "column": 28
        },
        "end": {
          "line": 352,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12967,
      "end": 12968,
      "loc": {
        "start": {
          "line": 352,
          "column": 35
        },
        "end": {
          "line": 352,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hasSingle",
      "start": 12969,
      "end": 12980,
      "loc": {
        "start": {
          "line": 352,
          "column": 37
        },
        "end": {
          "line": 352,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12980,
      "end": 12981,
      "loc": {
        "start": {
          "line": 352,
          "column": 48
        },
        "end": {
          "line": 352,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hasAll",
      "start": 12982,
      "end": 12990,
      "loc": {
        "start": {
          "line": 352,
          "column": 50
        },
        "end": {
          "line": 352,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12990,
      "end": 12991,
      "loc": {
        "start": {
          "line": 352,
          "column": 58
        },
        "end": {
          "line": 352,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "set",
      "start": 12992,
      "end": 12997,
      "loc": {
        "start": {
          "line": 352,
          "column": 60
        },
        "end": {
          "line": 352,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 12997,
      "end": 12998,
      "loc": {
        "start": {
          "line": 352,
          "column": 65
        },
        "end": {
          "line": 352,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "add",
      "start": 12999,
      "end": 13004,
      "loc": {
        "start": {
          "line": 352,
          "column": 67
        },
        "end": {
          "line": 352,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13004,
      "end": 13005,
      "loc": {
        "start": {
          "line": 352,
          "column": 72
        },
        "end": {
          "line": 352,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "addMultiple",
      "start": 13006,
      "end": 13019,
      "loc": {
        "start": {
          "line": 352,
          "column": 74
        },
        "end": {
          "line": 352,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13019,
      "end": 13020,
      "loc": {
        "start": {
          "line": 352,
          "column": 87
        },
        "end": {
          "line": 352,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "remove",
      "start": 13021,
      "end": 13029,
      "loc": {
        "start": {
          "line": 352,
          "column": 89
        },
        "end": {
          "line": 352,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13029,
      "end": 13030,
      "loc": {
        "start": {
          "line": 352,
          "column": 97
        },
        "end": {
          "line": 352,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "removeMultiple",
      "start": 13031,
      "end": 13047,
      "loc": {
        "start": {
          "line": 352,
          "column": 99
        },
        "end": {
          "line": 352,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13047,
      "end": 13048,
      "loc": {
        "start": {
          "line": 352,
          "column": 115
        },
        "end": {
          "line": 352,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "create",
      "start": 13049,
      "end": 13057,
      "loc": {
        "start": {
          "line": 352,
          "column": 117
        },
        "end": {
          "line": 352,
          "column": 125
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13057,
      "end": 13058,
      "loc": {
        "start": {
          "line": 352,
          "column": 125
        },
        "end": {
          "line": 352,
          "column": 126
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13058,
      "end": 13059,
      "loc": {
        "start": {
          "line": 352,
          "column": 126
        },
        "end": {
          "line": 352,
          "column": 127
        }
      }
    },
    {
      "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": 13064,
      "end": 13069,
      "loc": {
        "start": {
          "line": 353,
          "column": 4
        },
        "end": {
          "line": 353,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "aliases",
      "start": 13070,
      "end": 13077,
      "loc": {
        "start": {
          "line": 353,
          "column": 10
        },
        "end": {
          "line": 353,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 13078,
      "end": 13079,
      "loc": {
        "start": {
          "line": 353,
          "column": 18
        },
        "end": {
          "line": 353,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13080,
      "end": 13081,
      "loc": {
        "start": {
          "line": 353,
          "column": 20
        },
        "end": {
          "line": 353,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasSingle",
      "start": 13088,
      "end": 13097,
      "loc": {
        "start": {
          "line": 354,
          "column": 6
        },
        "end": {
          "line": 354,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13097,
      "end": 13098,
      "loc": {
        "start": {
          "line": 354,
          "column": 15
        },
        "end": {
          "line": 354,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "has",
      "start": 13099,
      "end": 13104,
      "loc": {
        "start": {
          "line": 354,
          "column": 17
        },
        "end": {
          "line": 354,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13104,
      "end": 13105,
      "loc": {
        "start": {
          "line": 354,
          "column": 22
        },
        "end": {
          "line": 354,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasAll",
      "start": 13112,
      "end": 13118,
      "loc": {
        "start": {
          "line": 355,
          "column": 6
        },
        "end": {
          "line": 355,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13118,
      "end": 13119,
      "loc": {
        "start": {
          "line": 355,
          "column": 12
        },
        "end": {
          "line": 355,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "has",
      "start": 13120,
      "end": 13125,
      "loc": {
        "start": {
          "line": 355,
          "column": 14
        },
        "end": {
          "line": 355,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13125,
      "end": 13126,
      "loc": {
        "start": {
          "line": 355,
          "column": 19
        },
        "end": {
          "line": 355,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "addMultiple",
      "start": 13133,
      "end": 13144,
      "loc": {
        "start": {
          "line": 356,
          "column": 6
        },
        "end": {
          "line": 356,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13144,
      "end": 13145,
      "loc": {
        "start": {
          "line": 356,
          "column": 17
        },
        "end": {
          "line": 356,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "add",
      "start": 13146,
      "end": 13151,
      "loc": {
        "start": {
          "line": 356,
          "column": 19
        },
        "end": {
          "line": 356,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13151,
      "end": 13152,
      "loc": {
        "start": {
          "line": 356,
          "column": 24
        },
        "end": {
          "line": 356,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "removeMultiple",
      "start": 13159,
      "end": 13173,
      "loc": {
        "start": {
          "line": 357,
          "column": 6
        },
        "end": {
          "line": 357,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13173,
      "end": 13174,
      "loc": {
        "start": {
          "line": 357,
          "column": 20
        },
        "end": {
          "line": 357,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "remove",
      "start": 13175,
      "end": 13183,
      "loc": {
        "start": {
          "line": 357,
          "column": 22
        },
        "end": {
          "line": 357,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13188,
      "end": 13189,
      "loc": {
        "start": {
          "line": 358,
          "column": 4
        },
        "end": {
          "line": 358,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13189,
      "end": 13190,
      "loc": {
        "start": {
          "line": 358,
          "column": 5
        },
        "end": {
          "line": 358,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Helpers",
      "start": 13196,
      "end": 13203,
      "loc": {
        "start": {
          "line": 360,
          "column": 4
        },
        "end": {
          "line": 360,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13203,
      "end": 13204,
      "loc": {
        "start": {
          "line": 360,
          "column": 11
        },
        "end": {
          "line": 360,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "mixinMethods",
      "start": 13204,
      "end": 13216,
      "loc": {
        "start": {
          "line": 360,
          "column": 12
        },
        "end": {
          "line": 360,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13216,
      "end": 13217,
      "loc": {
        "start": {
          "line": 360,
          "column": 24
        },
        "end": {
          "line": 360,
          "column": 25
        }
      }
    },
    {
      "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": 13217,
      "end": 13221,
      "loc": {
        "start": {
          "line": 360,
          "column": 25
        },
        "end": {
          "line": 360,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13221,
      "end": 13222,
      "loc": {
        "start": {
          "line": 360,
          "column": 29
        },
        "end": {
          "line": 360,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 13223,
      "end": 13226,
      "loc": {
        "start": {
          "line": 360,
          "column": 31
        },
        "end": {
          "line": 360,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13226,
      "end": 13227,
      "loc": {
        "start": {
          "line": 360,
          "column": 34
        },
        "end": {
          "line": 360,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "methods",
      "start": 13228,
      "end": 13235,
      "loc": {
        "start": {
          "line": 360,
          "column": 36
        },
        "end": {
          "line": 360,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13235,
      "end": 13236,
      "loc": {
        "start": {
          "line": 360,
          "column": 43
        },
        "end": {
          "line": 360,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "aliases",
      "start": 13237,
      "end": 13244,
      "loc": {
        "start": {
          "line": 360,
          "column": 45
        },
        "end": {
          "line": 360,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13244,
      "end": 13245,
      "loc": {
        "start": {
          "line": 360,
          "column": 52
        },
        "end": {
          "line": 360,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13245,
      "end": 13246,
      "loc": {
        "start": {
          "line": 360,
          "column": 53
        },
        "end": {
          "line": 360,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13249,
      "end": 13250,
      "loc": {
        "start": {
          "line": 361,
          "column": 2
        },
        "end": {
          "line": 361,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Get everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @param {String} [options.schema] Apply a schema on the related model\n   * @see {@link Model.findAll}  for a full explanation of options\n   * @return {Promise<Array<Model>>}\n   ",
      "start": 13254,
      "end": 13780,
      "loc": {
        "start": {
          "line": 363,
          "column": 2
        },
        "end": {
          "line": 372,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 13783,
      "end": 13786,
      "loc": {
        "start": {
          "line": 373,
          "column": 2
        },
        "end": {
          "line": 373,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13786,
      "end": 13787,
      "loc": {
        "start": {
          "line": 373,
          "column": 5
        },
        "end": {
          "line": 373,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 13787,
      "end": 13795,
      "loc": {
        "start": {
          "line": 373,
          "column": 6
        },
        "end": {
          "line": 373,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13795,
      "end": 13796,
      "loc": {
        "start": {
          "line": 373,
          "column": 14
        },
        "end": {
          "line": 373,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 13797,
      "end": 13804,
      "loc": {
        "start": {
          "line": 373,
          "column": 16
        },
        "end": {
          "line": 373,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13804,
      "end": 13805,
      "loc": {
        "start": {
          "line": 373,
          "column": 23
        },
        "end": {
          "line": 373,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13806,
      "end": 13807,
      "loc": {
        "start": {
          "line": 373,
          "column": 25
        },
        "end": {
          "line": 373,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 13812,
      "end": 13819,
      "loc": {
        "start": {
          "line": 374,
          "column": 4
        },
        "end": {
          "line": 374,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 13820,
      "end": 13821,
      "loc": {
        "start": {
          "line": 374,
          "column": 12
        },
        "end": {
          "line": 374,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 13822,
      "end": 13827,
      "loc": {
        "start": {
          "line": 374,
          "column": 14
        },
        "end": {
          "line": 374,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13827,
      "end": 13828,
      "loc": {
        "start": {
          "line": 374,
          "column": 19
        },
        "end": {
          "line": 374,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "cloneDeep",
      "start": 13828,
      "end": 13837,
      "loc": {
        "start": {
          "line": 374,
          "column": 20
        },
        "end": {
          "line": 374,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13837,
      "end": 13838,
      "loc": {
        "start": {
          "line": 374,
          "column": 29
        },
        "end": {
          "line": 374,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 13838,
      "end": 13845,
      "loc": {
        "start": {
          "line": 374,
          "column": 30
        },
        "end": {
          "line": 374,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13845,
      "end": 13846,
      "loc": {
        "start": {
          "line": 374,
          "column": 37
        },
        "end": {
          "line": 374,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 13847,
      "end": 13849,
      "loc": {
        "start": {
          "line": 374,
          "column": 39
        },
        "end": {
          "line": 374,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13850,
      "end": 13851,
      "loc": {
        "start": {
          "line": 374,
          "column": 42
        },
        "end": {
          "line": 374,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13851,
      "end": 13852,
      "loc": {
        "start": {
          "line": 374,
          "column": 43
        },
        "end": {
          "line": 374,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13852,
      "end": 13853,
      "loc": {
        "start": {
          "line": 374,
          "column": 44
        },
        "end": {
          "line": 374,
          "column": 45
        }
      }
    },
    {
      "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": 13859,
      "end": 13864,
      "loc": {
        "start": {
          "line": 376,
          "column": 4
        },
        "end": {
          "line": 376,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 13865,
      "end": 13876,
      "loc": {
        "start": {
          "line": 376,
          "column": 10
        },
        "end": {
          "line": 376,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 13877,
      "end": 13878,
      "loc": {
        "start": {
          "line": 376,
          "column": 22
        },
        "end": {
          "line": 376,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 13879,
      "end": 13883,
      "loc": {
        "start": {
          "line": 376,
          "column": 24
        },
        "end": {
          "line": 376,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13883,
      "end": 13884,
      "loc": {
        "start": {
          "line": 376,
          "column": 28
        },
        "end": {
          "line": 376,
          "column": 29
        }
      }
    },
    {
      "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": 13889,
      "end": 13894,
      "loc": {
        "start": {
          "line": 377,
          "column": 4
        },
        "end": {
          "line": 377,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 13895,
      "end": 13902,
      "loc": {
        "start": {
          "line": 377,
          "column": 10
        },
        "end": {
          "line": 377,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 13903,
      "end": 13904,
      "loc": {
        "start": {
          "line": 377,
          "column": 18
        },
        "end": {
          "line": 377,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 13905,
      "end": 13916,
      "loc": {
        "start": {
          "line": 377,
          "column": 20
        },
        "end": {
          "line": 377,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13916,
      "end": 13917,
      "loc": {
        "start": {
          "line": 377,
          "column": 31
        },
        "end": {
          "line": 377,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 13917,
      "end": 13924,
      "loc": {
        "start": {
          "line": 377,
          "column": 32
        },
        "end": {
          "line": 377,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13924,
      "end": 13925,
      "loc": {
        "start": {
          "line": 377,
          "column": 39
        },
        "end": {
          "line": 377,
          "column": 40
        }
      }
    },
    {
      "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": 13930,
      "end": 13933,
      "loc": {
        "start": {
          "line": 378,
          "column": 4
        },
        "end": {
          "line": 378,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scopeWhere",
      "start": 13934,
      "end": 13944,
      "loc": {
        "start": {
          "line": 378,
          "column": 8
        },
        "end": {
          "line": 378,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13944,
      "end": 13945,
      "loc": {
        "start": {
          "line": 378,
          "column": 18
        },
        "end": {
          "line": 378,
          "column": 19
        }
      }
    },
    {
      "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": 13950,
      "end": 13953,
      "loc": {
        "start": {
          "line": 379,
          "column": 4
        },
        "end": {
          "line": 379,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 13954,
      "end": 13966,
      "loc": {
        "start": {
          "line": 379,
          "column": 8
        },
        "end": {
          "line": 379,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13966,
      "end": 13967,
      "loc": {
        "start": {
          "line": 379,
          "column": 20
        },
        "end": {
          "line": 379,
          "column": 21
        }
      }
    },
    {
      "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": 13973,
      "end": 13975,
      "loc": {
        "start": {
          "line": 381,
          "column": 4
        },
        "end": {
          "line": 381,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13976,
      "end": 13977,
      "loc": {
        "start": {
          "line": 381,
          "column": 7
        },
        "end": {
          "line": 381,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 13977,
      "end": 13988,
      "loc": {
        "start": {
          "line": 381,
          "column": 8
        },
        "end": {
          "line": 381,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 13988,
      "end": 13989,
      "loc": {
        "start": {
          "line": 381,
          "column": 19
        },
        "end": {
          "line": 381,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 13989,
      "end": 13994,
      "loc": {
        "start": {
          "line": 381,
          "column": 20
        },
        "end": {
          "line": 381,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13994,
      "end": 13995,
      "loc": {
        "start": {
          "line": 381,
          "column": 25
        },
        "end": {
          "line": 381,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 13996,
      "end": 13997,
      "loc": {
        "start": {
          "line": 381,
          "column": 27
        },
        "end": {
          "line": 381,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scopeWhere",
      "start": 14004,
      "end": 14014,
      "loc": {
        "start": {
          "line": 382,
          "column": 6
        },
        "end": {
          "line": 382,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14015,
      "end": 14016,
      "loc": {
        "start": {
          "line": 382,
          "column": 17
        },
        "end": {
          "line": 382,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 14017,
      "end": 14018,
      "loc": {
        "start": {
          "line": 382,
          "column": 19
        },
        "end": {
          "line": 382,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14018,
      "end": 14019,
      "loc": {
        "start": {
          "line": 382,
          "column": 20
        },
        "end": {
          "line": 382,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "clone",
      "start": 14019,
      "end": 14024,
      "loc": {
        "start": {
          "line": 382,
          "column": 21
        },
        "end": {
          "line": 382,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14024,
      "end": 14025,
      "loc": {
        "start": {
          "line": 382,
          "column": 26
        },
        "end": {
          "line": 382,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14025,
      "end": 14036,
      "loc": {
        "start": {
          "line": 382,
          "column": 27
        },
        "end": {
          "line": 382,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14036,
      "end": 14037,
      "loc": {
        "start": {
          "line": 382,
          "column": 38
        },
        "end": {
          "line": 382,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 14037,
      "end": 14042,
      "loc": {
        "start": {
          "line": 382,
          "column": 39
        },
        "end": {
          "line": 382,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14042,
      "end": 14043,
      "loc": {
        "start": {
          "line": 382,
          "column": 44
        },
        "end": {
          "line": 382,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14043,
      "end": 14044,
      "loc": {
        "start": {
          "line": 382,
          "column": 45
        },
        "end": {
          "line": 382,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14049,
      "end": 14050,
      "loc": {
        "start": {
          "line": 383,
          "column": 4
        },
        "end": {
          "line": 383,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14056,
      "end": 14063,
      "loc": {
        "start": {
          "line": 385,
          "column": 4
        },
        "end": {
          "line": 385,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14063,
      "end": 14064,
      "loc": {
        "start": {
          "line": 385,
          "column": 11
        },
        "end": {
          "line": 385,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 14064,
      "end": 14069,
      "loc": {
        "start": {
          "line": 385,
          "column": 12
        },
        "end": {
          "line": 385,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14070,
      "end": 14071,
      "loc": {
        "start": {
          "line": 385,
          "column": 18
        },
        "end": {
          "line": 385,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14072,
      "end": 14073,
      "loc": {
        "start": {
          "line": 385,
          "column": 20
        },
        "end": {
          "line": 385,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "$and",
      "start": 14080,
      "end": 14084,
      "loc": {
        "start": {
          "line": 386,
          "column": 6
        },
        "end": {
          "line": 386,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14084,
      "end": 14085,
      "loc": {
        "start": {
          "line": 386,
          "column": 10
        },
        "end": {
          "line": 386,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14086,
      "end": 14087,
      "loc": {
        "start": {
          "line": 386,
          "column": 12
        },
        "end": {
          "line": 386,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scopeWhere",
      "start": 14096,
      "end": 14106,
      "loc": {
        "start": {
          "line": 387,
          "column": 8
        },
        "end": {
          "line": 387,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14106,
      "end": 14107,
      "loc": {
        "start": {
          "line": 387,
          "column": 18
        },
        "end": {
          "line": 387,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14116,
      "end": 14123,
      "loc": {
        "start": {
          "line": 388,
          "column": 8
        },
        "end": {
          "line": 388,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14123,
      "end": 14124,
      "loc": {
        "start": {
          "line": 388,
          "column": 15
        },
        "end": {
          "line": 388,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 14124,
      "end": 14129,
      "loc": {
        "start": {
          "line": 388,
          "column": 16
        },
        "end": {
          "line": 388,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14136,
      "end": 14137,
      "loc": {
        "start": {
          "line": 389,
          "column": 6
        },
        "end": {
          "line": 389,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14142,
      "end": 14143,
      "loc": {
        "start": {
          "line": 390,
          "column": 4
        },
        "end": {
          "line": 390,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14143,
      "end": 14144,
      "loc": {
        "start": {
          "line": 390,
          "column": 5
        },
        "end": {
          "line": 390,
          "column": 6
        }
      }
    },
    {
      "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": 14150,
      "end": 14152,
      "loc": {
        "start": {
          "line": 392,
          "column": 4
        },
        "end": {
          "line": 392,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14153,
      "end": 14154,
      "loc": {
        "start": {
          "line": 392,
          "column": 7
        },
        "end": {
          "line": 392,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 14154,
      "end": 14160,
      "loc": {
        "start": {
          "line": 392,
          "column": 8
        },
        "end": {
          "line": 392,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14160,
      "end": 14161,
      "loc": {
        "start": {
          "line": 392,
          "column": 14
        },
        "end": {
          "line": 392,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14161,
      "end": 14168,
      "loc": {
        "start": {
          "line": 392,
          "column": 15
        },
        "end": {
          "line": 392,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14168,
      "end": 14169,
      "loc": {
        "start": {
          "line": 392,
          "column": 22
        },
        "end": {
          "line": 392,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 14169,
      "end": 14174,
      "loc": {
        "start": {
          "line": 392,
          "column": 23
        },
        "end": {
          "line": 392,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14174,
      "end": 14175,
      "loc": {
        "start": {
          "line": 392,
          "column": 28
        },
        "end": {
          "line": 392,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 14176,
      "end": 14179,
      "loc": {
        "start": {
          "line": 392,
          "column": 30
        },
        "end": {
          "line": 392,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14180,
      "end": 14187,
      "loc": {
        "start": {
          "line": 392,
          "column": 34
        },
        "end": {
          "line": 392,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14187,
      "end": 14188,
      "loc": {
        "start": {
          "line": 392,
          "column": 41
        },
        "end": {
          "line": 392,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 14188,
      "end": 14193,
      "loc": {
        "start": {
          "line": 392,
          "column": 42
        },
        "end": {
          "line": 392,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14193,
      "end": 14194,
      "loc": {
        "start": {
          "line": 392,
          "column": 47
        },
        "end": {
          "line": 392,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14195,
      "end": 14196,
      "loc": {
        "start": {
          "line": 392,
          "column": 49
        },
        "end": {
          "line": 392,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14203,
      "end": 14215,
      "loc": {
        "start": {
          "line": 393,
          "column": 6
        },
        "end": {
          "line": 393,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14216,
      "end": 14217,
      "loc": {
        "start": {
          "line": 393,
          "column": 19
        },
        "end": {
          "line": 393,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14218,
      "end": 14219,
      "loc": {
        "start": {
          "line": 393,
          "column": 21
        },
        "end": {
          "line": 393,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14219,
      "end": 14220,
      "loc": {
        "start": {
          "line": 393,
          "column": 22
        },
        "end": {
          "line": 393,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14220,
      "end": 14221,
      "loc": {
        "start": {
          "line": 393,
          "column": 23
        },
        "end": {
          "line": 393,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14228,
      "end": 14240,
      "loc": {
        "start": {
          "line": 394,
          "column": 6
        },
        "end": {
          "line": 394,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14240,
      "end": 14241,
      "loc": {
        "start": {
          "line": 394,
          "column": 18
        },
        "end": {
          "line": 394,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14241,
      "end": 14252,
      "loc": {
        "start": {
          "line": 394,
          "column": 19
        },
        "end": {
          "line": 394,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14252,
      "end": 14253,
      "loc": {
        "start": {
          "line": 394,
          "column": 30
        },
        "end": {
          "line": 394,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignKey",
      "start": 14253,
      "end": 14263,
      "loc": {
        "start": {
          "line": 394,
          "column": 31
        },
        "end": {
          "line": 394,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14263,
      "end": 14264,
      "loc": {
        "start": {
          "line": 394,
          "column": 41
        },
        "end": {
          "line": 394,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14265,
      "end": 14266,
      "loc": {
        "start": {
          "line": 394,
          "column": 43
        },
        "end": {
          "line": 394,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 14267,
      "end": 14275,
      "loc": {
        "start": {
          "line": 394,
          "column": 45
        },
        "end": {
          "line": 394,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14275,
      "end": 14276,
      "loc": {
        "start": {
          "line": 394,
          "column": 53
        },
        "end": {
          "line": 394,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 14276,
      "end": 14279,
      "loc": {
        "start": {
          "line": 394,
          "column": 54
        },
        "end": {
          "line": 394,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14279,
      "end": 14280,
      "loc": {
        "start": {
          "line": 394,
          "column": 57
        },
        "end": {
          "line": 394,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14280,
      "end": 14291,
      "loc": {
        "start": {
          "line": 394,
          "column": 58
        },
        "end": {
          "line": 394,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14291,
      "end": 14292,
      "loc": {
        "start": {
          "line": 394,
          "column": 69
        },
        "end": {
          "line": 394,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 14292,
      "end": 14298,
      "loc": {
        "start": {
          "line": 394,
          "column": 70
        },
        "end": {
          "line": 394,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14298,
      "end": 14299,
      "loc": {
        "start": {
          "line": 394,
          "column": 76
        },
        "end": {
          "line": 394,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 14299,
      "end": 14318,
      "loc": {
        "start": {
          "line": 394,
          "column": 77
        },
        "end": {
          "line": 394,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14318,
      "end": 14319,
      "loc": {
        "start": {
          "line": 394,
          "column": 96
        },
        "end": {
          "line": 394,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14319,
      "end": 14320,
      "loc": {
        "start": {
          "line": 394,
          "column": 97
        },
        "end": {
          "line": 394,
          "column": 98
        }
      }
    },
    {
      "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": 14328,
      "end": 14330,
      "loc": {
        "start": {
          "line": 396,
          "column": 6
        },
        "end": {
          "line": 396,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14331,
      "end": 14332,
      "loc": {
        "start": {
          "line": 396,
          "column": 9
        },
        "end": {
          "line": 396,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14332,
      "end": 14339,
      "loc": {
        "start": {
          "line": 396,
          "column": 10
        },
        "end": {
          "line": 396,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14339,
      "end": 14340,
      "loc": {
        "start": {
          "line": 396,
          "column": 17
        },
        "end": {
          "line": 396,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 14340,
      "end": 14345,
      "loc": {
        "start": {
          "line": 396,
          "column": 18
        },
        "end": {
          "line": 396,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14345,
      "end": 14346,
      "loc": {
        "start": {
          "line": 396,
          "column": 23
        },
        "end": {
          "line": 396,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14347,
      "end": 14348,
      "loc": {
        "start": {
          "line": 396,
          "column": 25
        },
        "end": {
          "line": 396,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 14357,
      "end": 14358,
      "loc": {
        "start": {
          "line": 397,
          "column": 8
        },
        "end": {
          "line": 397,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14358,
      "end": 14359,
      "loc": {
        "start": {
          "line": 397,
          "column": 9
        },
        "end": {
          "line": 397,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 14359,
      "end": 14365,
      "loc": {
        "start": {
          "line": 397,
          "column": 10
        },
        "end": {
          "line": 397,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14365,
      "end": 14366,
      "loc": {
        "start": {
          "line": 397,
          "column": 16
        },
        "end": {
          "line": 397,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14366,
      "end": 14378,
      "loc": {
        "start": {
          "line": 397,
          "column": 17
        },
        "end": {
          "line": 397,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14378,
      "end": 14379,
      "loc": {
        "start": {
          "line": 397,
          "column": 29
        },
        "end": {
          "line": 397,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14380,
      "end": 14387,
      "loc": {
        "start": {
          "line": 397,
          "column": 31
        },
        "end": {
          "line": 397,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14387,
      "end": 14388,
      "loc": {
        "start": {
          "line": 397,
          "column": 38
        },
        "end": {
          "line": 397,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 14388,
      "end": 14393,
      "loc": {
        "start": {
          "line": 397,
          "column": 39
        },
        "end": {
          "line": 397,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14393,
      "end": 14394,
      "loc": {
        "start": {
          "line": 397,
          "column": 44
        },
        "end": {
          "line": 397,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14394,
      "end": 14395,
      "loc": {
        "start": {
          "line": 397,
          "column": 45
        },
        "end": {
          "line": 397,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14402,
      "end": 14403,
      "loc": {
        "start": {
          "line": 398,
          "column": 6
        },
        "end": {
          "line": 398,
          "column": 7
        }
      }
    },
    {
      "type": "CommentLine",
      "value": "If a user pass a where on the options through options, make an \"and\" with the current throughWhere",
      "start": 14411,
      "end": 14511,
      "loc": {
        "start": {
          "line": 400,
          "column": 6
        },
        "end": {
          "line": 400,
          "column": 106
        }
      }
    },
    {
      "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": 14518,
      "end": 14520,
      "loc": {
        "start": {
          "line": 401,
          "column": 6
        },
        "end": {
          "line": 401,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14521,
      "end": 14522,
      "loc": {
        "start": {
          "line": 401,
          "column": 9
        },
        "end": {
          "line": 401,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14522,
      "end": 14529,
      "loc": {
        "start": {
          "line": 401,
          "column": 10
        },
        "end": {
          "line": 401,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14529,
      "end": 14530,
      "loc": {
        "start": {
          "line": 401,
          "column": 17
        },
        "end": {
          "line": 401,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14530,
      "end": 14537,
      "loc": {
        "start": {
          "line": 401,
          "column": 18
        },
        "end": {
          "line": 401,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "&&",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 2,
        "updateContext": null
      },
      "value": "&&",
      "start": 14538,
      "end": 14540,
      "loc": {
        "start": {
          "line": 401,
          "column": 26
        },
        "end": {
          "line": 401,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14541,
      "end": 14548,
      "loc": {
        "start": {
          "line": 401,
          "column": 29
        },
        "end": {
          "line": 401,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14548,
      "end": 14549,
      "loc": {
        "start": {
          "line": 401,
          "column": 36
        },
        "end": {
          "line": 401,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14549,
      "end": 14556,
      "loc": {
        "start": {
          "line": 401,
          "column": 37
        },
        "end": {
          "line": 401,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14556,
      "end": 14557,
      "loc": {
        "start": {
          "line": 401,
          "column": 44
        },
        "end": {
          "line": 401,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 14557,
      "end": 14562,
      "loc": {
        "start": {
          "line": 401,
          "column": 45
        },
        "end": {
          "line": 401,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14562,
      "end": 14563,
      "loc": {
        "start": {
          "line": 401,
          "column": 50
        },
        "end": {
          "line": 401,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14564,
      "end": 14565,
      "loc": {
        "start": {
          "line": 401,
          "column": 52
        },
        "end": {
          "line": 401,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14574,
      "end": 14586,
      "loc": {
        "start": {
          "line": 402,
          "column": 8
        },
        "end": {
          "line": 402,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14587,
      "end": 14588,
      "loc": {
        "start": {
          "line": 402,
          "column": 21
        },
        "end": {
          "line": 402,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14589,
      "end": 14590,
      "loc": {
        "start": {
          "line": 402,
          "column": 23
        },
        "end": {
          "line": 402,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "$and",
      "start": 14601,
      "end": 14605,
      "loc": {
        "start": {
          "line": 403,
          "column": 10
        },
        "end": {
          "line": 403,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14605,
      "end": 14606,
      "loc": {
        "start": {
          "line": 403,
          "column": 14
        },
        "end": {
          "line": 403,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14607,
      "end": 14608,
      "loc": {
        "start": {
          "line": 403,
          "column": 16
        },
        "end": {
          "line": 403,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14608,
      "end": 14620,
      "loc": {
        "start": {
          "line": 403,
          "column": 17
        },
        "end": {
          "line": 403,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14620,
      "end": 14621,
      "loc": {
        "start": {
          "line": 403,
          "column": 29
        },
        "end": {
          "line": 403,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14622,
      "end": 14629,
      "loc": {
        "start": {
          "line": 403,
          "column": 31
        },
        "end": {
          "line": 403,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14629,
      "end": 14630,
      "loc": {
        "start": {
          "line": 403,
          "column": 38
        },
        "end": {
          "line": 403,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 14630,
      "end": 14637,
      "loc": {
        "start": {
          "line": 403,
          "column": 39
        },
        "end": {
          "line": 403,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14637,
      "end": 14638,
      "loc": {
        "start": {
          "line": 403,
          "column": 46
        },
        "end": {
          "line": 403,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 14638,
      "end": 14643,
      "loc": {
        "start": {
          "line": 403,
          "column": 47
        },
        "end": {
          "line": 403,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14643,
      "end": 14644,
      "loc": {
        "start": {
          "line": 403,
          "column": 52
        },
        "end": {
          "line": 403,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14653,
      "end": 14654,
      "loc": {
        "start": {
          "line": 404,
          "column": 8
        },
        "end": {
          "line": 404,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14654,
      "end": 14655,
      "loc": {
        "start": {
          "line": 404,
          "column": 9
        },
        "end": {
          "line": 404,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14662,
      "end": 14663,
      "loc": {
        "start": {
          "line": 405,
          "column": 6
        },
        "end": {
          "line": 405,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14671,
      "end": 14678,
      "loc": {
        "start": {
          "line": 407,
          "column": 6
        },
        "end": {
          "line": 407,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14678,
      "end": 14679,
      "loc": {
        "start": {
          "line": 407,
          "column": 13
        },
        "end": {
          "line": 407,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "include",
      "start": 14679,
      "end": 14686,
      "loc": {
        "start": {
          "line": 407,
          "column": 14
        },
        "end": {
          "line": 407,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14687,
      "end": 14688,
      "loc": {
        "start": {
          "line": 407,
          "column": 22
        },
        "end": {
          "line": 407,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14689,
      "end": 14696,
      "loc": {
        "start": {
          "line": 407,
          "column": 24
        },
        "end": {
          "line": 407,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14696,
      "end": 14697,
      "loc": {
        "start": {
          "line": 407,
          "column": 31
        },
        "end": {
          "line": 407,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "include",
      "start": 14697,
      "end": 14704,
      "loc": {
        "start": {
          "line": 407,
          "column": 32
        },
        "end": {
          "line": 407,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 14705,
      "end": 14707,
      "loc": {
        "start": {
          "line": 407,
          "column": 40
        },
        "end": {
          "line": 407,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14708,
      "end": 14709,
      "loc": {
        "start": {
          "line": 407,
          "column": 43
        },
        "end": {
          "line": 407,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14709,
      "end": 14710,
      "loc": {
        "start": {
          "line": 407,
          "column": 44
        },
        "end": {
          "line": 407,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14710,
      "end": 14711,
      "loc": {
        "start": {
          "line": 407,
          "column": 45
        },
        "end": {
          "line": 407,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14718,
      "end": 14725,
      "loc": {
        "start": {
          "line": 408,
          "column": 6
        },
        "end": {
          "line": 408,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14725,
      "end": 14726,
      "loc": {
        "start": {
          "line": 408,
          "column": 13
        },
        "end": {
          "line": 408,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "include",
      "start": 14726,
      "end": 14733,
      "loc": {
        "start": {
          "line": 408,
          "column": 14
        },
        "end": {
          "line": 408,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14733,
      "end": 14734,
      "loc": {
        "start": {
          "line": 408,
          "column": 21
        },
        "end": {
          "line": 408,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 14734,
      "end": 14738,
      "loc": {
        "start": {
          "line": 408,
          "column": 22
        },
        "end": {
          "line": 408,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14738,
      "end": 14739,
      "loc": {
        "start": {
          "line": 408,
          "column": 26
        },
        "end": {
          "line": 408,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14739,
      "end": 14740,
      "loc": {
        "start": {
          "line": 408,
          "column": 27
        },
        "end": {
          "line": 408,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14749,
      "end": 14760,
      "loc": {
        "start": {
          "line": 409,
          "column": 8
        },
        "end": {
          "line": 409,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14760,
      "end": 14761,
      "loc": {
        "start": {
          "line": 409,
          "column": 19
        },
        "end": {
          "line": 409,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14762,
      "end": 14773,
      "loc": {
        "start": {
          "line": 409,
          "column": 21
        },
        "end": {
          "line": 409,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14773,
      "end": 14774,
      "loc": {
        "start": {
          "line": 409,
          "column": 32
        },
        "end": {
          "line": 409,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oneFromTarget",
      "start": 14774,
      "end": 14787,
      "loc": {
        "start": {
          "line": 409,
          "column": 33
        },
        "end": {
          "line": 409,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14787,
      "end": 14788,
      "loc": {
        "start": {
          "line": 409,
          "column": 46
        },
        "end": {
          "line": 409,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 14797,
      "end": 14807,
      "loc": {
        "start": {
          "line": 410,
          "column": 8
        },
        "end": {
          "line": 410,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14807,
      "end": 14808,
      "loc": {
        "start": {
          "line": 410,
          "column": 18
        },
        "end": {
          "line": 410,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14809,
      "end": 14816,
      "loc": {
        "start": {
          "line": 410,
          "column": 20
        },
        "end": {
          "line": 410,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14816,
      "end": 14817,
      "loc": {
        "start": {
          "line": 410,
          "column": 27
        },
        "end": {
          "line": 410,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "joinTableAttributes",
      "start": 14817,
      "end": 14836,
      "loc": {
        "start": {
          "line": 410,
          "column": 28
        },
        "end": {
          "line": 410,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14836,
      "end": 14837,
      "loc": {
        "start": {
          "line": 410,
          "column": 47
        },
        "end": {
          "line": 410,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "required",
      "start": 14846,
      "end": 14854,
      "loc": {
        "start": {
          "line": 411,
          "column": 8
        },
        "end": {
          "line": 411,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14854,
      "end": 14855,
      "loc": {
        "start": {
          "line": 411,
          "column": 16
        },
        "end": {
          "line": 411,
          "column": 17
        }
      }
    },
    {
      "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": 14856,
      "end": 14860,
      "loc": {
        "start": {
          "line": 411,
          "column": 18
        },
        "end": {
          "line": 411,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14860,
      "end": 14861,
      "loc": {
        "start": {
          "line": 411,
          "column": 22
        },
        "end": {
          "line": 411,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 14870,
      "end": 14875,
      "loc": {
        "start": {
          "line": 412,
          "column": 8
        },
        "end": {
          "line": 412,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14875,
      "end": 14876,
      "loc": {
        "start": {
          "line": 412,
          "column": 13
        },
        "end": {
          "line": 412,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughWhere",
      "start": 14877,
      "end": 14889,
      "loc": {
        "start": {
          "line": 412,
          "column": 15
        },
        "end": {
          "line": 412,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14896,
      "end": 14897,
      "loc": {
        "start": {
          "line": 413,
          "column": 6
        },
        "end": {
          "line": 413,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14897,
      "end": 14898,
      "loc": {
        "start": {
          "line": 413,
          "column": 7
        },
        "end": {
          "line": 413,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14898,
      "end": 14899,
      "loc": {
        "start": {
          "line": 413,
          "column": 8
        },
        "end": {
          "line": 413,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14904,
      "end": 14905,
      "loc": {
        "start": {
          "line": 414,
          "column": 4
        },
        "end": {
          "line": 414,
          "column": 5
        }
      }
    },
    {
      "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": 14911,
      "end": 14914,
      "loc": {
        "start": {
          "line": 416,
          "column": 4
        },
        "end": {
          "line": 416,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 14915,
      "end": 14920,
      "loc": {
        "start": {
          "line": 416,
          "column": 8
        },
        "end": {
          "line": 416,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 14921,
      "end": 14922,
      "loc": {
        "start": {
          "line": 416,
          "column": 14
        },
        "end": {
          "line": 416,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 14923,
      "end": 14934,
      "loc": {
        "start": {
          "line": 416,
          "column": 16
        },
        "end": {
          "line": 416,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14934,
      "end": 14935,
      "loc": {
        "start": {
          "line": 416,
          "column": 27
        },
        "end": {
          "line": 416,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 14935,
      "end": 14941,
      "loc": {
        "start": {
          "line": 416,
          "column": 28
        },
        "end": {
          "line": 416,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14941,
      "end": 14942,
      "loc": {
        "start": {
          "line": 416,
          "column": 34
        },
        "end": {
          "line": 416,
          "column": 35
        }
      }
    },
    {
      "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": 14947,
      "end": 14949,
      "loc": {
        "start": {
          "line": 417,
          "column": 4
        },
        "end": {
          "line": 417,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14950,
      "end": 14951,
      "loc": {
        "start": {
          "line": 417,
          "column": 7
        },
        "end": {
          "line": 417,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14951,
      "end": 14958,
      "loc": {
        "start": {
          "line": 417,
          "column": 8
        },
        "end": {
          "line": 417,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 14958,
      "end": 14959,
      "loc": {
        "start": {
          "line": 417,
          "column": 15
        },
        "end": {
          "line": 417,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasOwnProperty",
      "start": 14959,
      "end": 14973,
      "loc": {
        "start": {
          "line": 417,
          "column": 16
        },
        "end": {
          "line": 417,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14973,
      "end": 14974,
      "loc": {
        "start": {
          "line": 417,
          "column": 30
        },
        "end": {
          "line": 417,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "scope",
      "start": 14974,
      "end": 14981,
      "loc": {
        "start": {
          "line": 417,
          "column": 31
        },
        "end": {
          "line": 417,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14981,
      "end": 14982,
      "loc": {
        "start": {
          "line": 417,
          "column": 38
        },
        "end": {
          "line": 417,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14982,
      "end": 14983,
      "loc": {
        "start": {
          "line": 417,
          "column": 39
        },
        "end": {
          "line": 417,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14984,
      "end": 14985,
      "loc": {
        "start": {
          "line": 417,
          "column": 41
        },
        "end": {
          "line": 417,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 14992,
      "end": 14994,
      "loc": {
        "start": {
          "line": 418,
          "column": 6
        },
        "end": {
          "line": 418,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 14995,
      "end": 14996,
      "loc": {
        "start": {
          "line": 418,
          "column": 9
        },
        "end": {
          "line": 418,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 14996,
      "end": 14997,
      "loc": {
        "start": {
          "line": 418,
          "column": 10
        },
        "end": {
          "line": 418,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 14997,
      "end": 15004,
      "loc": {
        "start": {
          "line": 418,
          "column": 11
        },
        "end": {
          "line": 418,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15004,
      "end": 15005,
      "loc": {
        "start": {
          "line": 418,
          "column": 18
        },
        "end": {
          "line": 418,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 15005,
      "end": 15010,
      "loc": {
        "start": {
          "line": 418,
          "column": 19
        },
        "end": {
          "line": 418,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15010,
      "end": 15011,
      "loc": {
        "start": {
          "line": 418,
          "column": 24
        },
        "end": {
          "line": 418,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15012,
      "end": 15013,
      "loc": {
        "start": {
          "line": 418,
          "column": 26
        },
        "end": {
          "line": 418,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15022,
      "end": 15027,
      "loc": {
        "start": {
          "line": 419,
          "column": 8
        },
        "end": {
          "line": 419,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15028,
      "end": 15029,
      "loc": {
        "start": {
          "line": 419,
          "column": 14
        },
        "end": {
          "line": 419,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15030,
      "end": 15035,
      "loc": {
        "start": {
          "line": 419,
          "column": 16
        },
        "end": {
          "line": 419,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15035,
      "end": 15036,
      "loc": {
        "start": {
          "line": 419,
          "column": 21
        },
        "end": {
          "line": 419,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unscoped",
      "start": 15036,
      "end": 15044,
      "loc": {
        "start": {
          "line": 419,
          "column": 22
        },
        "end": {
          "line": 419,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15044,
      "end": 15045,
      "loc": {
        "start": {
          "line": 419,
          "column": 30
        },
        "end": {
          "line": 419,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15045,
      "end": 15046,
      "loc": {
        "start": {
          "line": 419,
          "column": 31
        },
        "end": {
          "line": 419,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15046,
      "end": 15047,
      "loc": {
        "start": {
          "line": 419,
          "column": 32
        },
        "end": {
          "line": 419,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15054,
      "end": 15055,
      "loc": {
        "start": {
          "line": 420,
          "column": 6
        },
        "end": {
          "line": 420,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 15056,
      "end": 15060,
      "loc": {
        "start": {
          "line": 420,
          "column": 8
        },
        "end": {
          "line": 420,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15061,
      "end": 15062,
      "loc": {
        "start": {
          "line": 420,
          "column": 13
        },
        "end": {
          "line": 420,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15071,
      "end": 15076,
      "loc": {
        "start": {
          "line": 421,
          "column": 8
        },
        "end": {
          "line": 421,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15077,
      "end": 15078,
      "loc": {
        "start": {
          "line": 421,
          "column": 14
        },
        "end": {
          "line": 421,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15079,
      "end": 15084,
      "loc": {
        "start": {
          "line": 421,
          "column": 16
        },
        "end": {
          "line": 421,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15084,
      "end": 15085,
      "loc": {
        "start": {
          "line": 421,
          "column": 21
        },
        "end": {
          "line": 421,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 15085,
      "end": 15090,
      "loc": {
        "start": {
          "line": 421,
          "column": 22
        },
        "end": {
          "line": 421,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15090,
      "end": 15091,
      "loc": {
        "start": {
          "line": 421,
          "column": 27
        },
        "end": {
          "line": 421,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15091,
      "end": 15098,
      "loc": {
        "start": {
          "line": 421,
          "column": 28
        },
        "end": {
          "line": 421,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15098,
      "end": 15099,
      "loc": {
        "start": {
          "line": 421,
          "column": 35
        },
        "end": {
          "line": 421,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 15099,
      "end": 15104,
      "loc": {
        "start": {
          "line": 421,
          "column": 36
        },
        "end": {
          "line": 421,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15104,
      "end": 15105,
      "loc": {
        "start": {
          "line": 421,
          "column": 41
        },
        "end": {
          "line": 421,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15105,
      "end": 15106,
      "loc": {
        "start": {
          "line": 421,
          "column": 42
        },
        "end": {
          "line": 421,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15113,
      "end": 15114,
      "loc": {
        "start": {
          "line": 422,
          "column": 6
        },
        "end": {
          "line": 422,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15119,
      "end": 15120,
      "loc": {
        "start": {
          "line": 423,
          "column": 4
        },
        "end": {
          "line": 423,
          "column": 5
        }
      }
    },
    {
      "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": 15126,
      "end": 15128,
      "loc": {
        "start": {
          "line": 425,
          "column": 4
        },
        "end": {
          "line": 425,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15129,
      "end": 15130,
      "loc": {
        "start": {
          "line": 425,
          "column": 7
        },
        "end": {
          "line": 425,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15130,
      "end": 15137,
      "loc": {
        "start": {
          "line": 425,
          "column": 8
        },
        "end": {
          "line": 425,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15137,
      "end": 15138,
      "loc": {
        "start": {
          "line": 425,
          "column": 15
        },
        "end": {
          "line": 425,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "hasOwnProperty",
      "start": 15138,
      "end": 15152,
      "loc": {
        "start": {
          "line": 425,
          "column": 16
        },
        "end": {
          "line": 425,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15152,
      "end": 15153,
      "loc": {
        "start": {
          "line": 425,
          "column": 30
        },
        "end": {
          "line": 425,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "schema",
      "start": 15153,
      "end": 15161,
      "loc": {
        "start": {
          "line": 425,
          "column": 31
        },
        "end": {
          "line": 425,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15161,
      "end": 15162,
      "loc": {
        "start": {
          "line": 425,
          "column": 39
        },
        "end": {
          "line": 425,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15162,
      "end": 15163,
      "loc": {
        "start": {
          "line": 425,
          "column": 40
        },
        "end": {
          "line": 425,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15164,
      "end": 15165,
      "loc": {
        "start": {
          "line": 425,
          "column": 42
        },
        "end": {
          "line": 425,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15172,
      "end": 15177,
      "loc": {
        "start": {
          "line": 426,
          "column": 6
        },
        "end": {
          "line": 426,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15178,
      "end": 15179,
      "loc": {
        "start": {
          "line": 426,
          "column": 12
        },
        "end": {
          "line": 426,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15180,
      "end": 15185,
      "loc": {
        "start": {
          "line": 426,
          "column": 14
        },
        "end": {
          "line": 426,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15185,
      "end": 15186,
      "loc": {
        "start": {
          "line": 426,
          "column": 19
        },
        "end": {
          "line": 426,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "schema",
      "start": 15186,
      "end": 15192,
      "loc": {
        "start": {
          "line": 426,
          "column": 20
        },
        "end": {
          "line": 426,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15192,
      "end": 15193,
      "loc": {
        "start": {
          "line": 426,
          "column": 26
        },
        "end": {
          "line": 426,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15193,
      "end": 15200,
      "loc": {
        "start": {
          "line": 426,
          "column": 27
        },
        "end": {
          "line": 426,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15200,
      "end": 15201,
      "loc": {
        "start": {
          "line": 426,
          "column": 34
        },
        "end": {
          "line": 426,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "schema",
      "start": 15201,
      "end": 15207,
      "loc": {
        "start": {
          "line": 426,
          "column": 35
        },
        "end": {
          "line": 426,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15207,
      "end": 15208,
      "loc": {
        "start": {
          "line": 426,
          "column": 41
        },
        "end": {
          "line": 426,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15209,
      "end": 15216,
      "loc": {
        "start": {
          "line": 426,
          "column": 43
        },
        "end": {
          "line": 426,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15216,
      "end": 15217,
      "loc": {
        "start": {
          "line": 426,
          "column": 50
        },
        "end": {
          "line": 426,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "schemaDelimiter",
      "start": 15217,
      "end": 15232,
      "loc": {
        "start": {
          "line": 426,
          "column": 51
        },
        "end": {
          "line": 426,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15232,
      "end": 15233,
      "loc": {
        "start": {
          "line": 426,
          "column": 66
        },
        "end": {
          "line": 426,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15233,
      "end": 15234,
      "loc": {
        "start": {
          "line": 426,
          "column": 67
        },
        "end": {
          "line": 426,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15239,
      "end": 15240,
      "loc": {
        "start": {
          "line": 427,
          "column": 4
        },
        "end": {
          "line": 427,
          "column": 5
        }
      }
    },
    {
      "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": 15246,
      "end": 15252,
      "loc": {
        "start": {
          "line": 429,
          "column": 4
        },
        "end": {
          "line": 429,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15253,
      "end": 15258,
      "loc": {
        "start": {
          "line": 429,
          "column": 11
        },
        "end": {
          "line": 429,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15258,
      "end": 15259,
      "loc": {
        "start": {
          "line": 429,
          "column": 16
        },
        "end": {
          "line": 429,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "findAll",
      "start": 15259,
      "end": 15266,
      "loc": {
        "start": {
          "line": 429,
          "column": 17
        },
        "end": {
          "line": 429,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15266,
      "end": 15267,
      "loc": {
        "start": {
          "line": 429,
          "column": 24
        },
        "end": {
          "line": 429,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15267,
      "end": 15274,
      "loc": {
        "start": {
          "line": 429,
          "column": 25
        },
        "end": {
          "line": 429,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15274,
      "end": 15275,
      "loc": {
        "start": {
          "line": 429,
          "column": 32
        },
        "end": {
          "line": 429,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15275,
      "end": 15276,
      "loc": {
        "start": {
          "line": 429,
          "column": 33
        },
        "end": {
          "line": 429,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15279,
      "end": 15280,
      "loc": {
        "start": {
          "line": 430,
          "column": 2
        },
        "end": {
          "line": 430,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Count everything currently associated with this, using an optional where clause.\n   *\n   * @param {Object} [options]\n   * @param {Object} [options.where] An optional where clause to limit the associated models\n   * @param {String|Boolean} [options.scope] Apply a scope on the related model, or remove its default scope by passing false\n   * @return {Promise<Integer>}\n   ",
      "start": 15284,
      "end": 15666,
      "loc": {
        "start": {
          "line": 432,
          "column": 2
        },
        "end": {
          "line": 439,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "count",
      "start": 15669,
      "end": 15674,
      "loc": {
        "start": {
          "line": 440,
          "column": 2
        },
        "end": {
          "line": 440,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15674,
      "end": 15675,
      "loc": {
        "start": {
          "line": 440,
          "column": 7
        },
        "end": {
          "line": 440,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 15675,
      "end": 15683,
      "loc": {
        "start": {
          "line": 440,
          "column": 8
        },
        "end": {
          "line": 440,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15683,
      "end": 15684,
      "loc": {
        "start": {
          "line": 440,
          "column": 16
        },
        "end": {
          "line": 440,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15685,
      "end": 15692,
      "loc": {
        "start": {
          "line": 440,
          "column": 18
        },
        "end": {
          "line": 440,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15692,
      "end": 15693,
      "loc": {
        "start": {
          "line": 440,
          "column": 25
        },
        "end": {
          "line": 440,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15694,
      "end": 15695,
      "loc": {
        "start": {
          "line": 440,
          "column": 27
        },
        "end": {
          "line": 440,
          "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": 15700,
      "end": 15705,
      "loc": {
        "start": {
          "line": 441,
          "column": 4
        },
        "end": {
          "line": 441,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 15706,
      "end": 15717,
      "loc": {
        "start": {
          "line": 441,
          "column": 10
        },
        "end": {
          "line": 441,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15718,
      "end": 15719,
      "loc": {
        "start": {
          "line": 441,
          "column": 22
        },
        "end": {
          "line": 441,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 15720,
      "end": 15724,
      "loc": {
        "start": {
          "line": 441,
          "column": 24
        },
        "end": {
          "line": 441,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15724,
      "end": 15725,
      "loc": {
        "start": {
          "line": 441,
          "column": 28
        },
        "end": {
          "line": 441,
          "column": 29
        }
      }
    },
    {
      "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": 15730,
      "end": 15735,
      "loc": {
        "start": {
          "line": 442,
          "column": 4
        },
        "end": {
          "line": 442,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15736,
      "end": 15741,
      "loc": {
        "start": {
          "line": 442,
          "column": 10
        },
        "end": {
          "line": 442,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15742,
      "end": 15743,
      "loc": {
        "start": {
          "line": 442,
          "column": 16
        },
        "end": {
          "line": 442,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 15744,
      "end": 15755,
      "loc": {
        "start": {
          "line": 442,
          "column": 18
        },
        "end": {
          "line": 442,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15755,
      "end": 15756,
      "loc": {
        "start": {
          "line": 442,
          "column": 29
        },
        "end": {
          "line": 442,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 15756,
      "end": 15762,
      "loc": {
        "start": {
          "line": 442,
          "column": 30
        },
        "end": {
          "line": 442,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15762,
      "end": 15763,
      "loc": {
        "start": {
          "line": 442,
          "column": 36
        },
        "end": {
          "line": 442,
          "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": 15768,
      "end": 15773,
      "loc": {
        "start": {
          "line": 443,
          "column": 4
        },
        "end": {
          "line": 443,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 15774,
      "end": 15783,
      "loc": {
        "start": {
          "line": 443,
          "column": 10
        },
        "end": {
          "line": 443,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15784,
      "end": 15785,
      "loc": {
        "start": {
          "line": 443,
          "column": 20
        },
        "end": {
          "line": 443,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15786,
      "end": 15791,
      "loc": {
        "start": {
          "line": 443,
          "column": 22
        },
        "end": {
          "line": 443,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15791,
      "end": 15792,
      "loc": {
        "start": {
          "line": 443,
          "column": 27
        },
        "end": {
          "line": 443,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 15792,
      "end": 15801,
      "loc": {
        "start": {
          "line": 443,
          "column": 28
        },
        "end": {
          "line": 443,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15801,
      "end": 15802,
      "loc": {
        "start": {
          "line": 443,
          "column": 37
        },
        "end": {
          "line": 443,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15808,
      "end": 15815,
      "loc": {
        "start": {
          "line": 445,
          "column": 4
        },
        "end": {
          "line": 445,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15816,
      "end": 15817,
      "loc": {
        "start": {
          "line": 445,
          "column": 12
        },
        "end": {
          "line": 445,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 15818,
      "end": 15823,
      "loc": {
        "start": {
          "line": 445,
          "column": 14
        },
        "end": {
          "line": 445,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15823,
      "end": 15824,
      "loc": {
        "start": {
          "line": 445,
          "column": 19
        },
        "end": {
          "line": 445,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "cloneDeep",
      "start": 15824,
      "end": 15833,
      "loc": {
        "start": {
          "line": 445,
          "column": 20
        },
        "end": {
          "line": 445,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15833,
      "end": 15834,
      "loc": {
        "start": {
          "line": 445,
          "column": 29
        },
        "end": {
          "line": 445,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15834,
      "end": 15841,
      "loc": {
        "start": {
          "line": 445,
          "column": 30
        },
        "end": {
          "line": 445,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15841,
      "end": 15842,
      "loc": {
        "start": {
          "line": 445,
          "column": 37
        },
        "end": {
          "line": 445,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15842,
      "end": 15843,
      "loc": {
        "start": {
          "line": 445,
          "column": 38
        },
        "end": {
          "line": 445,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 15848,
      "end": 15855,
      "loc": {
        "start": {
          "line": 446,
          "column": 4
        },
        "end": {
          "line": 446,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15855,
      "end": 15856,
      "loc": {
        "start": {
          "line": 446,
          "column": 11
        },
        "end": {
          "line": 446,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 15856,
      "end": 15866,
      "loc": {
        "start": {
          "line": 446,
          "column": 12
        },
        "end": {
          "line": 446,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 15867,
      "end": 15868,
      "loc": {
        "start": {
          "line": 446,
          "column": 23
        },
        "end": {
          "line": 446,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15869,
      "end": 15870,
      "loc": {
        "start": {
          "line": 446,
          "column": 25
        },
        "end": {
          "line": 446,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15877,
      "end": 15878,
      "loc": {
        "start": {
          "line": 447,
          "column": 6
        },
        "end": {
          "line": 447,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 15878,
      "end": 15887,
      "loc": {
        "start": {
          "line": 447,
          "column": 7
        },
        "end": {
          "line": 447,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15887,
      "end": 15888,
      "loc": {
        "start": {
          "line": 447,
          "column": 16
        },
        "end": {
          "line": 447,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fn",
      "start": 15888,
      "end": 15890,
      "loc": {
        "start": {
          "line": 447,
          "column": 17
        },
        "end": {
          "line": 447,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15890,
      "end": 15891,
      "loc": {
        "start": {
          "line": 447,
          "column": 19
        },
        "end": {
          "line": 447,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "COUNT",
      "start": 15891,
      "end": 15898,
      "loc": {
        "start": {
          "line": 447,
          "column": 20
        },
        "end": {
          "line": 447,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15898,
      "end": 15899,
      "loc": {
        "start": {
          "line": 447,
          "column": 27
        },
        "end": {
          "line": 447,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sequelize",
      "start": 15900,
      "end": 15909,
      "loc": {
        "start": {
          "line": 447,
          "column": 29
        },
        "end": {
          "line": 447,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15909,
      "end": 15910,
      "loc": {
        "start": {
          "line": 447,
          "column": 38
        },
        "end": {
          "line": 447,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "col",
      "start": 15910,
      "end": 15913,
      "loc": {
        "start": {
          "line": 447,
          "column": 39
        },
        "end": {
          "line": 447,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15913,
      "end": 15914,
      "loc": {
        "start": {
          "line": 447,
          "column": 42
        },
        "end": {
          "line": 447,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15914,
      "end": 15915,
      "loc": {
        "start": {
          "line": 447,
          "column": 43
        },
        "end": {
          "line": 447,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 15915,
      "end": 15926,
      "loc": {
        "start": {
          "line": 447,
          "column": 44
        },
        "end": {
          "line": 447,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15926,
      "end": 15927,
      "loc": {
        "start": {
          "line": 447,
          "column": 55
        },
        "end": {
          "line": 447,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 15927,
      "end": 15933,
      "loc": {
        "start": {
          "line": 447,
          "column": 56
        },
        "end": {
          "line": 447,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15933,
      "end": 15934,
      "loc": {
        "start": {
          "line": 447,
          "column": 62
        },
        "end": {
          "line": 447,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 15934,
      "end": 15938,
      "loc": {
        "start": {
          "line": 447,
          "column": 63
        },
        "end": {
          "line": 447,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15938,
      "end": 15939,
      "loc": {
        "start": {
          "line": 447,
          "column": 67
        },
        "end": {
          "line": 447,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 15940,
      "end": 15945,
      "loc": {
        "start": {
          "line": 447,
          "column": 69
        },
        "end": {
          "line": 447,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15945,
      "end": 15946,
      "loc": {
        "start": {
          "line": 447,
          "column": 74
        },
        "end": {
          "line": 447,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 15946,
      "end": 15965,
      "loc": {
        "start": {
          "line": 447,
          "column": 75
        },
        "end": {
          "line": 447,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15965,
      "end": 15966,
      "loc": {
        "start": {
          "line": 447,
          "column": 94
        },
        "end": {
          "line": 447,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15966,
      "end": 15967,
      "loc": {
        "start": {
          "line": 447,
          "column": 95
        },
        "end": {
          "line": 447,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "join",
      "start": 15967,
      "end": 15971,
      "loc": {
        "start": {
          "line": 447,
          "column": 96
        },
        "end": {
          "line": 447,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15971,
      "end": 15972,
      "loc": {
        "start": {
          "line": 447,
          "column": 100
        },
        "end": {
          "line": 447,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": ".",
      "start": 15972,
      "end": 15975,
      "loc": {
        "start": {
          "line": 447,
          "column": 101
        },
        "end": {
          "line": 447,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15975,
      "end": 15976,
      "loc": {
        "start": {
          "line": 447,
          "column": 104
        },
        "end": {
          "line": 447,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15976,
      "end": 15977,
      "loc": {
        "start": {
          "line": 447,
          "column": 105
        },
        "end": {
          "line": 447,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 15977,
      "end": 15978,
      "loc": {
        "start": {
          "line": 447,
          "column": 106
        },
        "end": {
          "line": 447,
          "column": 107
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15978,
      "end": 15979,
      "loc": {
        "start": {
          "line": 447,
          "column": 107
        },
        "end": {
          "line": 447,
          "column": 108
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "count",
      "start": 15980,
      "end": 15987,
      "loc": {
        "start": {
          "line": 447,
          "column": 109
        },
        "end": {
          "line": 447,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15987,
      "end": 15988,
      "loc": {
        "start": {
          "line": 447,
          "column": 116
        },
        "end": {
          "line": 447,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15993,
      "end": 15994,
      "loc": {
        "start": {
          "line": 448,
          "column": 4
        },
        "end": {
          "line": 448,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 15994,
      "end": 15995,
      "loc": {
        "start": {
          "line": 448,
          "column": 5
        },
        "end": {
          "line": 448,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16000,
      "end": 16007,
      "loc": {
        "start": {
          "line": 449,
          "column": 4
        },
        "end": {
          "line": 449,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16007,
      "end": 16008,
      "loc": {
        "start": {
          "line": 449,
          "column": 11
        },
        "end": {
          "line": 449,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "joinTableAttributes",
      "start": 16008,
      "end": 16027,
      "loc": {
        "start": {
          "line": 449,
          "column": 12
        },
        "end": {
          "line": 449,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16028,
      "end": 16029,
      "loc": {
        "start": {
          "line": 449,
          "column": 32
        },
        "end": {
          "line": 449,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16030,
      "end": 16031,
      "loc": {
        "start": {
          "line": 449,
          "column": 34
        },
        "end": {
          "line": 449,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16031,
      "end": 16032,
      "loc": {
        "start": {
          "line": 449,
          "column": 35
        },
        "end": {
          "line": 449,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16032,
      "end": 16033,
      "loc": {
        "start": {
          "line": 449,
          "column": 36
        },
        "end": {
          "line": 449,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16038,
      "end": 16045,
      "loc": {
        "start": {
          "line": 450,
          "column": 4
        },
        "end": {
          "line": 450,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16045,
      "end": 16046,
      "loc": {
        "start": {
          "line": 450,
          "column": 11
        },
        "end": {
          "line": 450,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "raw",
      "start": 16046,
      "end": 16049,
      "loc": {
        "start": {
          "line": 450,
          "column": 12
        },
        "end": {
          "line": 450,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16050,
      "end": 16051,
      "loc": {
        "start": {
          "line": 450,
          "column": 16
        },
        "end": {
          "line": 450,
          "column": 17
        }
      }
    },
    {
      "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": 16052,
      "end": 16056,
      "loc": {
        "start": {
          "line": 450,
          "column": 18
        },
        "end": {
          "line": 450,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16056,
      "end": 16057,
      "loc": {
        "start": {
          "line": 450,
          "column": 22
        },
        "end": {
          "line": 450,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16062,
      "end": 16069,
      "loc": {
        "start": {
          "line": 451,
          "column": 4
        },
        "end": {
          "line": 451,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16069,
      "end": 16070,
      "loc": {
        "start": {
          "line": 451,
          "column": 11
        },
        "end": {
          "line": 451,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "plain",
      "start": 16070,
      "end": 16075,
      "loc": {
        "start": {
          "line": 451,
          "column": 12
        },
        "end": {
          "line": 451,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16076,
      "end": 16077,
      "loc": {
        "start": {
          "line": 451,
          "column": 18
        },
        "end": {
          "line": 451,
          "column": 19
        }
      }
    },
    {
      "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": 16078,
      "end": 16082,
      "loc": {
        "start": {
          "line": 451,
          "column": 20
        },
        "end": {
          "line": 451,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16082,
      "end": 16083,
      "loc": {
        "start": {
          "line": 451,
          "column": 24
        },
        "end": {
          "line": 451,
          "column": 25
        }
      }
    },
    {
      "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": 16089,
      "end": 16095,
      "loc": {
        "start": {
          "line": 453,
          "column": 4
        },
        "end": {
          "line": 453,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 16096,
      "end": 16107,
      "loc": {
        "start": {
          "line": 453,
          "column": 11
        },
        "end": {
          "line": 453,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16107,
      "end": 16108,
      "loc": {
        "start": {
          "line": 453,
          "column": 22
        },
        "end": {
          "line": 453,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 16108,
      "end": 16111,
      "loc": {
        "start": {
          "line": 453,
          "column": 23
        },
        "end": {
          "line": 453,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16111,
      "end": 16112,
      "loc": {
        "start": {
          "line": 453,
          "column": 26
        },
        "end": {
          "line": 453,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 16112,
      "end": 16120,
      "loc": {
        "start": {
          "line": 453,
          "column": 27
        },
        "end": {
          "line": 453,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16120,
      "end": 16121,
      "loc": {
        "start": {
          "line": 453,
          "column": 35
        },
        "end": {
          "line": 453,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16122,
      "end": 16129,
      "loc": {
        "start": {
          "line": 453,
          "column": 37
        },
        "end": {
          "line": 453,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16129,
      "end": 16130,
      "loc": {
        "start": {
          "line": 453,
          "column": 44
        },
        "end": {
          "line": 453,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16130,
      "end": 16131,
      "loc": {
        "start": {
          "line": 453,
          "column": 45
        },
        "end": {
          "line": 453,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "then",
      "start": 16131,
      "end": 16135,
      "loc": {
        "start": {
          "line": 453,
          "column": 46
        },
        "end": {
          "line": 453,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16135,
      "end": 16136,
      "loc": {
        "start": {
          "line": 453,
          "column": 50
        },
        "end": {
          "line": 453,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "result",
      "start": 16136,
      "end": 16142,
      "loc": {
        "start": {
          "line": 453,
          "column": 51
        },
        "end": {
          "line": 453,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16143,
      "end": 16145,
      "loc": {
        "start": {
          "line": 453,
          "column": 58
        },
        "end": {
          "line": 453,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "parseInt",
      "start": 16146,
      "end": 16154,
      "loc": {
        "start": {
          "line": 453,
          "column": 61
        },
        "end": {
          "line": 453,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16154,
      "end": 16155,
      "loc": {
        "start": {
          "line": 453,
          "column": 69
        },
        "end": {
          "line": 453,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "result",
      "start": 16155,
      "end": 16161,
      "loc": {
        "start": {
          "line": 453,
          "column": 70
        },
        "end": {
          "line": 453,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16161,
      "end": 16162,
      "loc": {
        "start": {
          "line": 453,
          "column": 76
        },
        "end": {
          "line": 453,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "count",
      "start": 16162,
      "end": 16167,
      "loc": {
        "start": {
          "line": 453,
          "column": 77
        },
        "end": {
          "line": 453,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16167,
      "end": 16168,
      "loc": {
        "start": {
          "line": 453,
          "column": 82
        },
        "end": {
          "line": 453,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 10,
      "start": 16169,
      "end": 16171,
      "loc": {
        "start": {
          "line": 453,
          "column": 84
        },
        "end": {
          "line": 453,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16171,
      "end": 16172,
      "loc": {
        "start": {
          "line": 453,
          "column": 86
        },
        "end": {
          "line": 453,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16172,
      "end": 16173,
      "loc": {
        "start": {
          "line": 453,
          "column": 87
        },
        "end": {
          "line": 453,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16173,
      "end": 16174,
      "loc": {
        "start": {
          "line": 453,
          "column": 88
        },
        "end": {
          "line": 453,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16177,
      "end": 16178,
      "loc": {
        "start": {
          "line": 454,
          "column": 2
        },
        "end": {
          "line": 454,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Check if one or more instance(s) are associated with this. If a list of instances is passed, the function returns true if _all_ instances are associated\n   *\n   * @param {Model[]|Model|string[]|String|number[]|Number} [instance(s)] Can be an array of instances or their primary keys\n   * @param {Object} [options] Options passed to getAssociations\n   * @return {Promise<boolean>}\n   ",
      "start": 16182,
      "end": 16576,
      "loc": {
        "start": {
          "line": 456,
          "column": 2
        },
        "end": {
          "line": 462,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "has",
      "start": 16579,
      "end": 16582,
      "loc": {
        "start": {
          "line": 463,
          "column": 2
        },
        "end": {
          "line": 463,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16582,
      "end": 16583,
      "loc": {
        "start": {
          "line": 463,
          "column": 5
        },
        "end": {
          "line": 463,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 16583,
      "end": 16597,
      "loc": {
        "start": {
          "line": 463,
          "column": 6
        },
        "end": {
          "line": 463,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16597,
      "end": 16598,
      "loc": {
        "start": {
          "line": 463,
          "column": 20
        },
        "end": {
          "line": 463,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 16599,
      "end": 16608,
      "loc": {
        "start": {
          "line": 463,
          "column": 22
        },
        "end": {
          "line": 463,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16608,
      "end": 16609,
      "loc": {
        "start": {
          "line": 463,
          "column": 31
        },
        "end": {
          "line": 463,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16610,
      "end": 16617,
      "loc": {
        "start": {
          "line": 463,
          "column": 33
        },
        "end": {
          "line": 463,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16617,
      "end": 16618,
      "loc": {
        "start": {
          "line": 463,
          "column": 40
        },
        "end": {
          "line": 463,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16619,
      "end": 16620,
      "loc": {
        "start": {
          "line": 463,
          "column": 42
        },
        "end": {
          "line": 463,
          "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": 16625,
      "end": 16630,
      "loc": {
        "start": {
          "line": 464,
          "column": 4
        },
        "end": {
          "line": 464,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 16631,
      "end": 16642,
      "loc": {
        "start": {
          "line": 464,
          "column": 10
        },
        "end": {
          "line": 464,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16643,
      "end": 16644,
      "loc": {
        "start": {
          "line": 464,
          "column": 22
        },
        "end": {
          "line": 464,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 16645,
      "end": 16649,
      "loc": {
        "start": {
          "line": 464,
          "column": 24
        },
        "end": {
          "line": 464,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16649,
      "end": 16650,
      "loc": {
        "start": {
          "line": 464,
          "column": 28
        },
        "end": {
          "line": 464,
          "column": 29
        }
      }
    },
    {
      "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": 16655,
      "end": 16660,
      "loc": {
        "start": {
          "line": 465,
          "column": 4
        },
        "end": {
          "line": 465,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 16661,
      "end": 16666,
      "loc": {
        "start": {
          "line": 465,
          "column": 10
        },
        "end": {
          "line": 465,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16667,
      "end": 16668,
      "loc": {
        "start": {
          "line": 465,
          "column": 16
        },
        "end": {
          "line": 465,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16669,
      "end": 16670,
      "loc": {
        "start": {
          "line": 465,
          "column": 18
        },
        "end": {
          "line": 465,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16670,
      "end": 16671,
      "loc": {
        "start": {
          "line": 465,
          "column": 19
        },
        "end": {
          "line": 465,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16671,
      "end": 16672,
      "loc": {
        "start": {
          "line": 465,
          "column": 20
        },
        "end": {
          "line": 465,
          "column": 21
        }
      }
    },
    {
      "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": 16678,
      "end": 16680,
      "loc": {
        "start": {
          "line": 467,
          "column": 4
        },
        "end": {
          "line": 467,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16681,
      "end": 16682,
      "loc": {
        "start": {
          "line": 467,
          "column": 7
        },
        "end": {
          "line": 467,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 16682,
      "end": 16683,
      "loc": {
        "start": {
          "line": 467,
          "column": 8
        },
        "end": {
          "line": 467,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Array",
      "start": 16683,
      "end": 16688,
      "loc": {
        "start": {
          "line": 467,
          "column": 9
        },
        "end": {
          "line": 467,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16688,
      "end": 16689,
      "loc": {
        "start": {
          "line": 467,
          "column": 14
        },
        "end": {
          "line": 467,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isArray",
      "start": 16689,
      "end": 16696,
      "loc": {
        "start": {
          "line": 467,
          "column": 15
        },
        "end": {
          "line": 467,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16696,
      "end": 16697,
      "loc": {
        "start": {
          "line": 467,
          "column": 22
        },
        "end": {
          "line": 467,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 16697,
      "end": 16706,
      "loc": {
        "start": {
          "line": 467,
          "column": 23
        },
        "end": {
          "line": 467,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16706,
      "end": 16707,
      "loc": {
        "start": {
          "line": 467,
          "column": 32
        },
        "end": {
          "line": 467,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16707,
      "end": 16708,
      "loc": {
        "start": {
          "line": 467,
          "column": 33
        },
        "end": {
          "line": 467,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16709,
      "end": 16710,
      "loc": {
        "start": {
          "line": 467,
          "column": 35
        },
        "end": {
          "line": 467,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 16717,
      "end": 16726,
      "loc": {
        "start": {
          "line": 468,
          "column": 6
        },
        "end": {
          "line": 468,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16727,
      "end": 16728,
      "loc": {
        "start": {
          "line": 468,
          "column": 16
        },
        "end": {
          "line": 468,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16729,
      "end": 16730,
      "loc": {
        "start": {
          "line": 468,
          "column": 18
        },
        "end": {
          "line": 468,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 16730,
      "end": 16739,
      "loc": {
        "start": {
          "line": 468,
          "column": 19
        },
        "end": {
          "line": 468,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16739,
      "end": 16740,
      "loc": {
        "start": {
          "line": 468,
          "column": 28
        },
        "end": {
          "line": 468,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16740,
      "end": 16741,
      "loc": {
        "start": {
          "line": 468,
          "column": 29
        },
        "end": {
          "line": 468,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16746,
      "end": 16747,
      "loc": {
        "start": {
          "line": 469,
          "column": 4
        },
        "end": {
          "line": 469,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16753,
      "end": 16760,
      "loc": {
        "start": {
          "line": 471,
          "column": 4
        },
        "end": {
          "line": 471,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16761,
      "end": 16762,
      "loc": {
        "start": {
          "line": 471,
          "column": 12
        },
        "end": {
          "line": 471,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 16763,
      "end": 16764,
      "loc": {
        "start": {
          "line": 471,
          "column": 14
        },
        "end": {
          "line": 471,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16764,
      "end": 16765,
      "loc": {
        "start": {
          "line": 471,
          "column": 15
        },
        "end": {
          "line": 471,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 16765,
      "end": 16771,
      "loc": {
        "start": {
          "line": 471,
          "column": 16
        },
        "end": {
          "line": 471,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16771,
      "end": 16772,
      "loc": {
        "start": {
          "line": 471,
          "column": 22
        },
        "end": {
          "line": 471,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16772,
      "end": 16773,
      "loc": {
        "start": {
          "line": 471,
          "column": 23
        },
        "end": {
          "line": 471,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "raw",
      "start": 16780,
      "end": 16783,
      "loc": {
        "start": {
          "line": 472,
          "column": 6
        },
        "end": {
          "line": 472,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16783,
      "end": 16784,
      "loc": {
        "start": {
          "line": 472,
          "column": 9
        },
        "end": {
          "line": 472,
          "column": 10
        }
      }
    },
    {
      "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": 16785,
      "end": 16789,
      "loc": {
        "start": {
          "line": 472,
          "column": 11
        },
        "end": {
          "line": 472,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16794,
      "end": 16795,
      "loc": {
        "start": {
          "line": 473,
          "column": 4
        },
        "end": {
          "line": 473,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16795,
      "end": 16796,
      "loc": {
        "start": {
          "line": 473,
          "column": 5
        },
        "end": {
          "line": 473,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 16797,
      "end": 16804,
      "loc": {
        "start": {
          "line": 473,
          "column": 7
        },
        "end": {
          "line": 473,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16804,
      "end": 16805,
      "loc": {
        "start": {
          "line": 473,
          "column": 14
        },
        "end": {
          "line": 473,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16806,
      "end": 16807,
      "loc": {
        "start": {
          "line": 473,
          "column": 16
        },
        "end": {
          "line": 473,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 16814,
      "end": 16819,
      "loc": {
        "start": {
          "line": 474,
          "column": 6
        },
        "end": {
          "line": 474,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16819,
      "end": 16820,
      "loc": {
        "start": {
          "line": 474,
          "column": 11
        },
        "end": {
          "line": 474,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "false",
        "keyword": "false",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "false",
      "start": 16821,
      "end": 16826,
      "loc": {
        "start": {
          "line": 474,
          "column": 13
        },
        "end": {
          "line": 474,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16831,
      "end": 16832,
      "loc": {
        "start": {
          "line": 475,
          "column": 4
        },
        "end": {
          "line": 475,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16832,
      "end": 16833,
      "loc": {
        "start": {
          "line": 475,
          "column": 5
        },
        "end": {
          "line": 475,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16833,
      "end": 16834,
      "loc": {
        "start": {
          "line": 475,
          "column": 6
        },
        "end": {
          "line": 475,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 16840,
      "end": 16845,
      "loc": {
        "start": {
          "line": 477,
          "column": 4
        },
        "end": {
          "line": 477,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16845,
      "end": 16846,
      "loc": {
        "start": {
          "line": 477,
          "column": 9
        },
        "end": {
          "line": 477,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "$or",
      "start": 16846,
      "end": 16849,
      "loc": {
        "start": {
          "line": 477,
          "column": 10
        },
        "end": {
          "line": 477,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 16850,
      "end": 16851,
      "loc": {
        "start": {
          "line": 477,
          "column": 14
        },
        "end": {
          "line": 477,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 16852,
      "end": 16861,
      "loc": {
        "start": {
          "line": 477,
          "column": 16
        },
        "end": {
          "line": 477,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16861,
      "end": 16862,
      "loc": {
        "start": {
          "line": 477,
          "column": 25
        },
        "end": {
          "line": 477,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 16862,
      "end": 16865,
      "loc": {
        "start": {
          "line": 477,
          "column": 26
        },
        "end": {
          "line": 477,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16865,
      "end": 16866,
      "loc": {
        "start": {
          "line": 477,
          "column": 29
        },
        "end": {
          "line": 477,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 16866,
      "end": 16874,
      "loc": {
        "start": {
          "line": 477,
          "column": 30
        },
        "end": {
          "line": 477,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16875,
      "end": 16877,
      "loc": {
        "start": {
          "line": 477,
          "column": 39
        },
        "end": {
          "line": 477,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16878,
      "end": 16879,
      "loc": {
        "start": {
          "line": 477,
          "column": 42
        },
        "end": {
          "line": 477,
          "column": 43
        }
      }
    },
    {
      "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": 16886,
      "end": 16888,
      "loc": {
        "start": {
          "line": 478,
          "column": 6
        },
        "end": {
          "line": 478,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16889,
      "end": 16890,
      "loc": {
        "start": {
          "line": 478,
          "column": 9
        },
        "end": {
          "line": 478,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 16890,
      "end": 16898,
      "loc": {
        "start": {
          "line": 478,
          "column": 10
        },
        "end": {
          "line": 478,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "instanceof",
        "keyword": "instanceof",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "instanceof",
      "start": 16899,
      "end": 16909,
      "loc": {
        "start": {
          "line": 478,
          "column": 19
        },
        "end": {
          "line": 478,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 16910,
      "end": 16921,
      "loc": {
        "start": {
          "line": 478,
          "column": 30
        },
        "end": {
          "line": 478,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16921,
      "end": 16922,
      "loc": {
        "start": {
          "line": 478,
          "column": 41
        },
        "end": {
          "line": 478,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 16922,
      "end": 16928,
      "loc": {
        "start": {
          "line": 478,
          "column": 42
        },
        "end": {
          "line": 478,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16928,
      "end": 16929,
      "loc": {
        "start": {
          "line": 478,
          "column": 48
        },
        "end": {
          "line": 478,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16930,
      "end": 16931,
      "loc": {
        "start": {
          "line": 478,
          "column": 50
        },
        "end": {
          "line": 478,
          "column": 51
        }
      }
    },
    {
      "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": 16940,
      "end": 16946,
      "loc": {
        "start": {
          "line": 479,
          "column": 8
        },
        "end": {
          "line": 479,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 16947,
      "end": 16955,
      "loc": {
        "start": {
          "line": 479,
          "column": 15
        },
        "end": {
          "line": 479,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16955,
      "end": 16956,
      "loc": {
        "start": {
          "line": 479,
          "column": 23
        },
        "end": {
          "line": 479,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 16956,
      "end": 16961,
      "loc": {
        "start": {
          "line": 479,
          "column": 24
        },
        "end": {
          "line": 479,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16961,
      "end": 16962,
      "loc": {
        "start": {
          "line": 479,
          "column": 29
        },
        "end": {
          "line": 479,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16962,
      "end": 16963,
      "loc": {
        "start": {
          "line": 479,
          "column": 30
        },
        "end": {
          "line": 479,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 16963,
      "end": 16964,
      "loc": {
        "start": {
          "line": 479,
          "column": 31
        },
        "end": {
          "line": 479,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16971,
      "end": 16972,
      "loc": {
        "start": {
          "line": 480,
          "column": 6
        },
        "end": {
          "line": 480,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 16973,
      "end": 16977,
      "loc": {
        "start": {
          "line": 480,
          "column": 8
        },
        "end": {
          "line": 480,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 16978,
      "end": 16979,
      "loc": {
        "start": {
          "line": 480,
          "column": 13
        },
        "end": {
          "line": 480,
          "column": 14
        }
      }
    },
    {
      "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": 16988,
      "end": 16993,
      "loc": {
        "start": {
          "line": 481,
          "column": 8
        },
        "end": {
          "line": 481,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 16994,
      "end": 16999,
      "loc": {
        "start": {
          "line": 481,
          "column": 14
        },
        "end": {
          "line": 481,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 17000,
      "end": 17001,
      "loc": {
        "start": {
          "line": 481,
          "column": 20
        },
        "end": {
          "line": 481,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17002,
      "end": 17003,
      "loc": {
        "start": {
          "line": 481,
          "column": 22
        },
        "end": {
          "line": 481,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17003,
      "end": 17004,
      "loc": {
        "start": {
          "line": 481,
          "column": 23
        },
        "end": {
          "line": 481,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17004,
      "end": 17005,
      "loc": {
        "start": {
          "line": 481,
          "column": 24
        },
        "end": {
          "line": 481,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 17014,
      "end": 17019,
      "loc": {
        "start": {
          "line": 482,
          "column": 8
        },
        "end": {
          "line": 482,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17019,
      "end": 17020,
      "loc": {
        "start": {
          "line": 482,
          "column": 13
        },
        "end": {
          "line": 482,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 17020,
      "end": 17031,
      "loc": {
        "start": {
          "line": 482,
          "column": 14
        },
        "end": {
          "line": 482,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17031,
      "end": 17032,
      "loc": {
        "start": {
          "line": 482,
          "column": 25
        },
        "end": {
          "line": 482,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 17032,
      "end": 17038,
      "loc": {
        "start": {
          "line": 482,
          "column": 26
        },
        "end": {
          "line": 482,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17038,
      "end": 17039,
      "loc": {
        "start": {
          "line": 482,
          "column": 32
        },
        "end": {
          "line": 482,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 17039,
      "end": 17058,
      "loc": {
        "start": {
          "line": 482,
          "column": 33
        },
        "end": {
          "line": 482,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17058,
      "end": 17059,
      "loc": {
        "start": {
          "line": 482,
          "column": 52
        },
        "end": {
          "line": 482,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 17060,
      "end": 17061,
      "loc": {
        "start": {
          "line": 482,
          "column": 54
        },
        "end": {
          "line": 482,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instance",
      "start": 17062,
      "end": 17070,
      "loc": {
        "start": {
          "line": 482,
          "column": 56
        },
        "end": {
          "line": 482,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17070,
      "end": 17071,
      "loc": {
        "start": {
          "line": 482,
          "column": 64
        },
        "end": {
          "line": 482,
          "column": 65
        }
      }
    },
    {
      "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": 17080,
      "end": 17086,
      "loc": {
        "start": {
          "line": 483,
          "column": 8
        },
        "end": {
          "line": 483,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 17087,
      "end": 17092,
      "loc": {
        "start": {
          "line": 483,
          "column": 15
        },
        "end": {
          "line": 483,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17092,
      "end": 17093,
      "loc": {
        "start": {
          "line": 483,
          "column": 20
        },
        "end": {
          "line": 483,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17100,
      "end": 17101,
      "loc": {
        "start": {
          "line": 484,
          "column": 6
        },
        "end": {
          "line": 484,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17106,
      "end": 17107,
      "loc": {
        "start": {
          "line": 485,
          "column": 4
        },
        "end": {
          "line": 485,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17107,
      "end": 17108,
      "loc": {
        "start": {
          "line": 485,
          "column": 5
        },
        "end": {
          "line": 485,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17108,
      "end": 17109,
      "loc": {
        "start": {
          "line": 485,
          "column": 6
        },
        "end": {
          "line": 485,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 17115,
      "end": 17122,
      "loc": {
        "start": {
          "line": 487,
          "column": 4
        },
        "end": {
          "line": 487,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17122,
      "end": 17123,
      "loc": {
        "start": {
          "line": 487,
          "column": 11
        },
        "end": {
          "line": 487,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 17123,
      "end": 17128,
      "loc": {
        "start": {
          "line": 487,
          "column": 12
        },
        "end": {
          "line": 487,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 17129,
      "end": 17130,
      "loc": {
        "start": {
          "line": 487,
          "column": 18
        },
        "end": {
          "line": 487,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17131,
      "end": 17132,
      "loc": {
        "start": {
          "line": 487,
          "column": 20
        },
        "end": {
          "line": 487,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "$and",
      "start": 17139,
      "end": 17143,
      "loc": {
        "start": {
          "line": 488,
          "column": 6
        },
        "end": {
          "line": 488,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17143,
      "end": 17144,
      "loc": {
        "start": {
          "line": 488,
          "column": 10
        },
        "end": {
          "line": 488,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17145,
      "end": 17146,
      "loc": {
        "start": {
          "line": 488,
          "column": 12
        },
        "end": {
          "line": 488,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 17155,
      "end": 17160,
      "loc": {
        "start": {
          "line": 489,
          "column": 8
        },
        "end": {
          "line": 489,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17160,
      "end": 17161,
      "loc": {
        "start": {
          "line": 489,
          "column": 13
        },
        "end": {
          "line": 489,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 17170,
      "end": 17177,
      "loc": {
        "start": {
          "line": 490,
          "column": 8
        },
        "end": {
          "line": 490,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17177,
      "end": 17178,
      "loc": {
        "start": {
          "line": 490,
          "column": 15
        },
        "end": {
          "line": 490,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 17178,
      "end": 17183,
      "loc": {
        "start": {
          "line": 490,
          "column": 16
        },
        "end": {
          "line": 490,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17190,
      "end": 17191,
      "loc": {
        "start": {
          "line": 491,
          "column": 6
        },
        "end": {
          "line": 491,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17196,
      "end": 17197,
      "loc": {
        "start": {
          "line": 492,
          "column": 4
        },
        "end": {
          "line": 492,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17197,
      "end": 17198,
      "loc": {
        "start": {
          "line": 492,
          "column": 5
        },
        "end": {
          "line": 492,
          "column": 6
        }
      }
    },
    {
      "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": 17204,
      "end": 17210,
      "loc": {
        "start": {
          "line": 494,
          "column": 4
        },
        "end": {
          "line": 494,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 17211,
      "end": 17222,
      "loc": {
        "start": {
          "line": 494,
          "column": 11
        },
        "end": {
          "line": 494,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17222,
      "end": 17223,
      "loc": {
        "start": {
          "line": 494,
          "column": 22
        },
        "end": {
          "line": 494,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 17223,
      "end": 17226,
      "loc": {
        "start": {
          "line": 494,
          "column": 23
        },
        "end": {
          "line": 494,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17226,
      "end": 17227,
      "loc": {
        "start": {
          "line": 494,
          "column": 26
        },
        "end": {
          "line": 494,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 17227,
      "end": 17241,
      "loc": {
        "start": {
          "line": 494,
          "column": 27
        },
        "end": {
          "line": 494,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17241,
      "end": 17242,
      "loc": {
        "start": {
          "line": 494,
          "column": 41
        },
        "end": {
          "line": 494,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 17243,
      "end": 17250,
      "loc": {
        "start": {
          "line": 494,
          "column": 43
        },
        "end": {
          "line": 494,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17250,
      "end": 17251,
      "loc": {
        "start": {
          "line": 494,
          "column": 50
        },
        "end": {
          "line": 494,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17251,
      "end": 17252,
      "loc": {
        "start": {
          "line": 494,
          "column": 51
        },
        "end": {
          "line": 494,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "then",
      "start": 17252,
      "end": 17256,
      "loc": {
        "start": {
          "line": 494,
          "column": 52
        },
        "end": {
          "line": 494,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17256,
      "end": 17257,
      "loc": {
        "start": {
          "line": 494,
          "column": 56
        },
        "end": {
          "line": 494,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "associatedObjects",
      "start": 17257,
      "end": 17274,
      "loc": {
        "start": {
          "line": 494,
          "column": 57
        },
        "end": {
          "line": 494,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17275,
      "end": 17277,
      "loc": {
        "start": {
          "line": 494,
          "column": 75
        },
        "end": {
          "line": 494,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "associatedObjects",
      "start": 17278,
      "end": 17295,
      "loc": {
        "start": {
          "line": 494,
          "column": 78
        },
        "end": {
          "line": 494,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17295,
      "end": 17296,
      "loc": {
        "start": {
          "line": 494,
          "column": 95
        },
        "end": {
          "line": 494,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 17296,
      "end": 17302,
      "loc": {
        "start": {
          "line": 494,
          "column": 96
        },
        "end": {
          "line": 494,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 17303,
      "end": 17306,
      "loc": {
        "start": {
          "line": 494,
          "column": 103
        },
        "end": {
          "line": 494,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "instances",
      "start": 17307,
      "end": 17316,
      "loc": {
        "start": {
          "line": 494,
          "column": 107
        },
        "end": {
          "line": 494,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17316,
      "end": 17317,
      "loc": {
        "start": {
          "line": 494,
          "column": 116
        },
        "end": {
          "line": 494,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 17317,
      "end": 17323,
      "loc": {
        "start": {
          "line": 494,
          "column": 117
        },
        "end": {
          "line": 494,
          "column": 123
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17323,
      "end": 17324,
      "loc": {
        "start": {
          "line": 494,
          "column": 123
        },
        "end": {
          "line": 494,
          "column": 124
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 17324,
      "end": 17325,
      "loc": {
        "start": {
          "line": 494,
          "column": 124
        },
        "end": {
          "line": 494,
          "column": 125
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17328,
      "end": 17329,
      "loc": {
        "start": {
          "line": 495,
          "column": 2
        },
        "end": {
          "line": 495,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Set the associated models by passing an array of instances or their primary keys. Everything that it not in the passed array will be un-associated.\n   *\n   * @param {Array<Model|String|Number>} [newAssociations] An array of persisted instances or primary key of instances to associate with this. Pass `null` or `undefined` to remove all associations.\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate`, `update` and `destroy`\n   * @param {Object} [options.validate] Run validation for the join model\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
      "start": 17333,
      "end": 17981,
      "loc": {
        "start": {
          "line": 497,
          "column": 2
        },
        "end": {
          "line": 505,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "set",
      "start": 17984,
      "end": 17987,
      "loc": {
        "start": {
          "line": 506,
          "column": 2
        },
        "end": {
          "line": 506,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 17987,
      "end": 17988,
      "loc": {
        "start": {
          "line": 506,
          "column": 5
        },
        "end": {
          "line": 506,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 17988,
      "end": 18002,
      "loc": {
        "start": {
          "line": 506,
          "column": 6
        },
        "end": {
          "line": 506,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18002,
      "end": 18003,
      "loc": {
        "start": {
          "line": 506,
          "column": 20
        },
        "end": {
          "line": 506,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 18004,
      "end": 18024,
      "loc": {
        "start": {
          "line": 506,
          "column": 22
        },
        "end": {
          "line": 506,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18024,
      "end": 18025,
      "loc": {
        "start": {
          "line": 506,
          "column": 42
        },
        "end": {
          "line": 506,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 18026,
      "end": 18033,
      "loc": {
        "start": {
          "line": 506,
          "column": 44
        },
        "end": {
          "line": 506,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18033,
      "end": 18034,
      "loc": {
        "start": {
          "line": 506,
          "column": 51
        },
        "end": {
          "line": 506,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18035,
      "end": 18036,
      "loc": {
        "start": {
          "line": 506,
          "column": 53
        },
        "end": {
          "line": 506,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 18041,
      "end": 18048,
      "loc": {
        "start": {
          "line": 507,
          "column": 4
        },
        "end": {
          "line": 507,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18049,
      "end": 18050,
      "loc": {
        "start": {
          "line": 507,
          "column": 12
        },
        "end": {
          "line": 507,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 18051,
      "end": 18058,
      "loc": {
        "start": {
          "line": 507,
          "column": 14
        },
        "end": {
          "line": 507,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 18059,
      "end": 18061,
      "loc": {
        "start": {
          "line": 507,
          "column": 22
        },
        "end": {
          "line": 507,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18062,
      "end": 18063,
      "loc": {
        "start": {
          "line": 507,
          "column": 25
        },
        "end": {
          "line": 507,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18063,
      "end": 18064,
      "loc": {
        "start": {
          "line": 507,
          "column": 26
        },
        "end": {
          "line": 507,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18064,
      "end": 18065,
      "loc": {
        "start": {
          "line": 507,
          "column": 27
        },
        "end": {
          "line": 507,
          "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": 18071,
      "end": 18076,
      "loc": {
        "start": {
          "line": 509,
          "column": 4
        },
        "end": {
          "line": 509,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18077,
      "end": 18088,
      "loc": {
        "start": {
          "line": 509,
          "column": 10
        },
        "end": {
          "line": 509,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18089,
      "end": 18090,
      "loc": {
        "start": {
          "line": 509,
          "column": 22
        },
        "end": {
          "line": 509,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 18091,
      "end": 18095,
      "loc": {
        "start": {
          "line": 509,
          "column": 24
        },
        "end": {
          "line": 509,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18095,
      "end": 18096,
      "loc": {
        "start": {
          "line": 509,
          "column": 28
        },
        "end": {
          "line": 509,
          "column": 29
        }
      }
    },
    {
      "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": 18101,
      "end": 18106,
      "loc": {
        "start": {
          "line": 510,
          "column": 4
        },
        "end": {
          "line": 510,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 18107,
      "end": 18116,
      "loc": {
        "start": {
          "line": 510,
          "column": 10
        },
        "end": {
          "line": 510,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18117,
      "end": 18118,
      "loc": {
        "start": {
          "line": 510,
          "column": 20
        },
        "end": {
          "line": 510,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18119,
      "end": 18130,
      "loc": {
        "start": {
          "line": 510,
          "column": 22
        },
        "end": {
          "line": 510,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18130,
      "end": 18131,
      "loc": {
        "start": {
          "line": 510,
          "column": 33
        },
        "end": {
          "line": 510,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 18131,
      "end": 18137,
      "loc": {
        "start": {
          "line": 510,
          "column": 34
        },
        "end": {
          "line": 510,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18137,
      "end": 18138,
      "loc": {
        "start": {
          "line": 510,
          "column": 40
        },
        "end": {
          "line": 510,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 18138,
      "end": 18157,
      "loc": {
        "start": {
          "line": 510,
          "column": 41
        },
        "end": {
          "line": 510,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18157,
      "end": 18158,
      "loc": {
        "start": {
          "line": 510,
          "column": 60
        },
        "end": {
          "line": 510,
          "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": 18163,
      "end": 18168,
      "loc": {
        "start": {
          "line": 511,
          "column": 4
        },
        "end": {
          "line": 511,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 18169,
      "end": 18178,
      "loc": {
        "start": {
          "line": 511,
          "column": 10
        },
        "end": {
          "line": 511,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18179,
      "end": 18180,
      "loc": {
        "start": {
          "line": 511,
          "column": 20
        },
        "end": {
          "line": 511,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18181,
      "end": 18192,
      "loc": {
        "start": {
          "line": 511,
          "column": 22
        },
        "end": {
          "line": 511,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18192,
      "end": 18193,
      "loc": {
        "start": {
          "line": 511,
          "column": 33
        },
        "end": {
          "line": 511,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 18193,
      "end": 18199,
      "loc": {
        "start": {
          "line": 511,
          "column": 34
        },
        "end": {
          "line": 511,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18199,
      "end": 18200,
      "loc": {
        "start": {
          "line": 511,
          "column": 40
        },
        "end": {
          "line": 511,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 18200,
      "end": 18219,
      "loc": {
        "start": {
          "line": 511,
          "column": 41
        },
        "end": {
          "line": 511,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18219,
      "end": 18220,
      "loc": {
        "start": {
          "line": 511,
          "column": 60
        },
        "end": {
          "line": 511,
          "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": 18225,
      "end": 18230,
      "loc": {
        "start": {
          "line": 512,
          "column": 4
        },
        "end": {
          "line": 512,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 18231,
      "end": 18241,
      "loc": {
        "start": {
          "line": 512,
          "column": 10
        },
        "end": {
          "line": 512,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18242,
      "end": 18243,
      "loc": {
        "start": {
          "line": 512,
          "column": 21
        },
        "end": {
          "line": 512,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18244,
      "end": 18255,
      "loc": {
        "start": {
          "line": 512,
          "column": 23
        },
        "end": {
          "line": 512,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18255,
      "end": 18256,
      "loc": {
        "start": {
          "line": 512,
          "column": 34
        },
        "end": {
          "line": 512,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 18256,
      "end": 18266,
      "loc": {
        "start": {
          "line": 512,
          "column": 35
        },
        "end": {
          "line": 512,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18266,
      "end": 18267,
      "loc": {
        "start": {
          "line": 512,
          "column": 45
        },
        "end": {
          "line": 512,
          "column": 46
        }
      }
    },
    {
      "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": 18272,
      "end": 18277,
      "loc": {
        "start": {
          "line": 513,
          "column": 4
        },
        "end": {
          "line": 513,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 18278,
      "end": 18295,
      "loc": {
        "start": {
          "line": 513,
          "column": 10
        },
        "end": {
          "line": 513,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18296,
      "end": 18297,
      "loc": {
        "start": {
          "line": 513,
          "column": 28
        },
        "end": {
          "line": 513,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18298,
      "end": 18309,
      "loc": {
        "start": {
          "line": 513,
          "column": 30
        },
        "end": {
          "line": 513,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18309,
      "end": 18310,
      "loc": {
        "start": {
          "line": 513,
          "column": 41
        },
        "end": {
          "line": 513,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 18310,
      "end": 18327,
      "loc": {
        "start": {
          "line": 513,
          "column": 42
        },
        "end": {
          "line": 513,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18327,
      "end": 18328,
      "loc": {
        "start": {
          "line": 513,
          "column": 59
        },
        "end": {
          "line": 513,
          "column": 60
        }
      }
    },
    {
      "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": 18333,
      "end": 18338,
      "loc": {
        "start": {
          "line": 514,
          "column": 4
        },
        "end": {
          "line": 514,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 18339,
      "end": 18344,
      "loc": {
        "start": {
          "line": 514,
          "column": 10
        },
        "end": {
          "line": 514,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18345,
      "end": 18346,
      "loc": {
        "start": {
          "line": 514,
          "column": 16
        },
        "end": {
          "line": 514,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18347,
      "end": 18348,
      "loc": {
        "start": {
          "line": 514,
          "column": 18
        },
        "end": {
          "line": 514,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18348,
      "end": 18349,
      "loc": {
        "start": {
          "line": 514,
          "column": 19
        },
        "end": {
          "line": 514,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18349,
      "end": 18350,
      "loc": {
        "start": {
          "line": 514,
          "column": 20
        },
        "end": {
          "line": 514,
          "column": 21
        }
      }
    },
    {
      "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": 18356,
      "end": 18358,
      "loc": {
        "start": {
          "line": 516,
          "column": 4
        },
        "end": {
          "line": 516,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18359,
      "end": 18360,
      "loc": {
        "start": {
          "line": 516,
          "column": 7
        },
        "end": {
          "line": 516,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 18360,
      "end": 18380,
      "loc": {
        "start": {
          "line": 516,
          "column": 8
        },
        "end": {
          "line": 516,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 18381,
      "end": 18384,
      "loc": {
        "start": {
          "line": 516,
          "column": 29
        },
        "end": {
          "line": 516,
          "column": 32
        }
      }
    },
    {
      "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": 18385,
      "end": 18389,
      "loc": {
        "start": {
          "line": 516,
          "column": 33
        },
        "end": {
          "line": 516,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18389,
      "end": 18390,
      "loc": {
        "start": {
          "line": 516,
          "column": 37
        },
        "end": {
          "line": 516,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18391,
      "end": 18392,
      "loc": {
        "start": {
          "line": 516,
          "column": 39
        },
        "end": {
          "line": 516,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 18399,
      "end": 18419,
      "loc": {
        "start": {
          "line": 517,
          "column": 6
        },
        "end": {
          "line": 517,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18420,
      "end": 18421,
      "loc": {
        "start": {
          "line": 517,
          "column": 27
        },
        "end": {
          "line": 517,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18422,
      "end": 18423,
      "loc": {
        "start": {
          "line": 517,
          "column": 29
        },
        "end": {
          "line": 517,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18423,
      "end": 18424,
      "loc": {
        "start": {
          "line": 517,
          "column": 30
        },
        "end": {
          "line": 517,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18424,
      "end": 18425,
      "loc": {
        "start": {
          "line": 517,
          "column": 31
        },
        "end": {
          "line": 517,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18430,
      "end": 18431,
      "loc": {
        "start": {
          "line": 518,
          "column": 4
        },
        "end": {
          "line": 518,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 18432,
      "end": 18436,
      "loc": {
        "start": {
          "line": 518,
          "column": 6
        },
        "end": {
          "line": 518,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18437,
      "end": 18438,
      "loc": {
        "start": {
          "line": 518,
          "column": 11
        },
        "end": {
          "line": 518,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 18445,
      "end": 18465,
      "loc": {
        "start": {
          "line": 519,
          "column": 6
        },
        "end": {
          "line": 519,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18466,
      "end": 18467,
      "loc": {
        "start": {
          "line": 519,
          "column": 27
        },
        "end": {
          "line": 519,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18468,
      "end": 18479,
      "loc": {
        "start": {
          "line": 519,
          "column": 29
        },
        "end": {
          "line": 519,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18479,
      "end": 18480,
      "loc": {
        "start": {
          "line": 519,
          "column": 40
        },
        "end": {
          "line": 519,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toInstanceArray",
      "start": 18480,
      "end": 18495,
      "loc": {
        "start": {
          "line": 519,
          "column": 41
        },
        "end": {
          "line": 519,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18495,
      "end": 18496,
      "loc": {
        "start": {
          "line": 519,
          "column": 56
        },
        "end": {
          "line": 519,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 18496,
      "end": 18516,
      "loc": {
        "start": {
          "line": 519,
          "column": 57
        },
        "end": {
          "line": 519,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18516,
      "end": 18517,
      "loc": {
        "start": {
          "line": 519,
          "column": 77
        },
        "end": {
          "line": 519,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18517,
      "end": 18518,
      "loc": {
        "start": {
          "line": 519,
          "column": 78
        },
        "end": {
          "line": 519,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18523,
      "end": 18524,
      "loc": {
        "start": {
          "line": 520,
          "column": 4
        },
        "end": {
          "line": 520,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 18530,
      "end": 18535,
      "loc": {
        "start": {
          "line": 522,
          "column": 4
        },
        "end": {
          "line": 522,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18535,
      "end": 18536,
      "loc": {
        "start": {
          "line": 522,
          "column": 9
        },
        "end": {
          "line": 522,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 18536,
      "end": 18546,
      "loc": {
        "start": {
          "line": 522,
          "column": 10
        },
        "end": {
          "line": 522,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18546,
      "end": 18547,
      "loc": {
        "start": {
          "line": 522,
          "column": 20
        },
        "end": {
          "line": 522,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18548,
      "end": 18549,
      "loc": {
        "start": {
          "line": 522,
          "column": 22
        },
        "end": {
          "line": 522,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 18550,
      "end": 18564,
      "loc": {
        "start": {
          "line": 522,
          "column": 24
        },
        "end": {
          "line": 522,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18564,
      "end": 18565,
      "loc": {
        "start": {
          "line": 522,
          "column": 38
        },
        "end": {
          "line": 522,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 18565,
      "end": 18568,
      "loc": {
        "start": {
          "line": 522,
          "column": 39
        },
        "end": {
          "line": 522,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18568,
      "end": 18569,
      "loc": {
        "start": {
          "line": 522,
          "column": 42
        },
        "end": {
          "line": 522,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 18569,
      "end": 18578,
      "loc": {
        "start": {
          "line": 522,
          "column": 43
        },
        "end": {
          "line": 522,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18578,
      "end": 18579,
      "loc": {
        "start": {
          "line": 522,
          "column": 52
        },
        "end": {
          "line": 522,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18579,
      "end": 18580,
      "loc": {
        "start": {
          "line": 522,
          "column": 53
        },
        "end": {
          "line": 522,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 18585,
      "end": 18586,
      "loc": {
        "start": {
          "line": 523,
          "column": 4
        },
        "end": {
          "line": 523,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18586,
      "end": 18587,
      "loc": {
        "start": {
          "line": 523,
          "column": 5
        },
        "end": {
          "line": 523,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 18587,
      "end": 18593,
      "loc": {
        "start": {
          "line": 523,
          "column": 6
        },
        "end": {
          "line": 523,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18593,
      "end": 18594,
      "loc": {
        "start": {
          "line": 523,
          "column": 12
        },
        "end": {
          "line": 523,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 18594,
      "end": 18599,
      "loc": {
        "start": {
          "line": 523,
          "column": 13
        },
        "end": {
          "line": 523,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18599,
      "end": 18600,
      "loc": {
        "start": {
          "line": 523,
          "column": 18
        },
        "end": {
          "line": 523,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18601,
      "end": 18612,
      "loc": {
        "start": {
          "line": 523,
          "column": 20
        },
        "end": {
          "line": 523,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18612,
      "end": 18613,
      "loc": {
        "start": {
          "line": 523,
          "column": 31
        },
        "end": {
          "line": 523,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 18613,
      "end": 18620,
      "loc": {
        "start": {
          "line": 523,
          "column": 32
        },
        "end": {
          "line": 523,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18620,
      "end": 18621,
      "loc": {
        "start": {
          "line": 523,
          "column": 39
        },
        "end": {
          "line": 523,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 18621,
      "end": 18626,
      "loc": {
        "start": {
          "line": 523,
          "column": 40
        },
        "end": {
          "line": 523,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18626,
      "end": 18627,
      "loc": {
        "start": {
          "line": 523,
          "column": 45
        },
        "end": {
          "line": 523,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18627,
      "end": 18628,
      "loc": {
        "start": {
          "line": 523,
          "column": 46
        },
        "end": {
          "line": 523,
          "column": 47
        }
      }
    },
    {
      "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": 18634,
      "end": 18640,
      "loc": {
        "start": {
          "line": 525,
          "column": 4
        },
        "end": {
          "line": 525,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 18641,
      "end": 18652,
      "loc": {
        "start": {
          "line": 525,
          "column": 11
        },
        "end": {
          "line": 525,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18652,
      "end": 18653,
      "loc": {
        "start": {
          "line": 525,
          "column": 22
        },
        "end": {
          "line": 525,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 18653,
      "end": 18660,
      "loc": {
        "start": {
          "line": 525,
          "column": 23
        },
        "end": {
          "line": 525,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18660,
      "end": 18661,
      "loc": {
        "start": {
          "line": 525,
          "column": 30
        },
        "end": {
          "line": 525,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 18661,
      "end": 18666,
      "loc": {
        "start": {
          "line": 525,
          "column": 31
        },
        "end": {
          "line": 525,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18666,
      "end": 18667,
      "loc": {
        "start": {
          "line": 525,
          "column": 36
        },
        "end": {
          "line": 525,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "findAll",
      "start": 18667,
      "end": 18674,
      "loc": {
        "start": {
          "line": 525,
          "column": 37
        },
        "end": {
          "line": 525,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18674,
      "end": 18675,
      "loc": {
        "start": {
          "line": 525,
          "column": 44
        },
        "end": {
          "line": 525,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 18675,
      "end": 18676,
      "loc": {
        "start": {
          "line": 525,
          "column": 45
        },
        "end": {
          "line": 525,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18676,
      "end": 18677,
      "loc": {
        "start": {
          "line": 525,
          "column": 46
        },
        "end": {
          "line": 525,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 18677,
      "end": 18685,
      "loc": {
        "start": {
          "line": 525,
          "column": 47
        },
        "end": {
          "line": 525,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18685,
      "end": 18686,
      "loc": {
        "start": {
          "line": 525,
          "column": 55
        },
        "end": {
          "line": 525,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18686,
      "end": 18687,
      "loc": {
        "start": {
          "line": 525,
          "column": 56
        },
        "end": {
          "line": 525,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 18687,
      "end": 18692,
      "loc": {
        "start": {
          "line": 525,
          "column": 57
        },
        "end": {
          "line": 525,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18692,
      "end": 18693,
      "loc": {
        "start": {
          "line": 525,
          "column": 62
        },
        "end": {
          "line": 525,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "raw",
      "start": 18694,
      "end": 18697,
      "loc": {
        "start": {
          "line": 525,
          "column": 64
        },
        "end": {
          "line": 525,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18697,
      "end": 18698,
      "loc": {
        "start": {
          "line": 525,
          "column": 67
        },
        "end": {
          "line": 525,
          "column": 68
        }
      }
    },
    {
      "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": 18699,
      "end": 18703,
      "loc": {
        "start": {
          "line": 525,
          "column": 69
        },
        "end": {
          "line": 525,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18703,
      "end": 18704,
      "loc": {
        "start": {
          "line": 525,
          "column": 73
        },
        "end": {
          "line": 525,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18704,
      "end": 18705,
      "loc": {
        "start": {
          "line": 525,
          "column": 74
        },
        "end": {
          "line": 525,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 18706,
      "end": 18713,
      "loc": {
        "start": {
          "line": 525,
          "column": 76
        },
        "end": {
          "line": 525,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18713,
      "end": 18714,
      "loc": {
        "start": {
          "line": 525,
          "column": 83
        },
        "end": {
          "line": 525,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18714,
      "end": 18715,
      "loc": {
        "start": {
          "line": 525,
          "column": 84
        },
        "end": {
          "line": 525,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18715,
      "end": 18716,
      "loc": {
        "start": {
          "line": 525,
          "column": 85
        },
        "end": {
          "line": 525,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "then",
      "start": 18716,
      "end": 18720,
      "loc": {
        "start": {
          "line": 525,
          "column": 86
        },
        "end": {
          "line": 525,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18720,
      "end": 18721,
      "loc": {
        "start": {
          "line": 525,
          "column": 90
        },
        "end": {
          "line": 525,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRows",
      "start": 18721,
      "end": 18732,
      "loc": {
        "start": {
          "line": 525,
          "column": 91
        },
        "end": {
          "line": 525,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18733,
      "end": 18735,
      "loc": {
        "start": {
          "line": 525,
          "column": 103
        },
        "end": {
          "line": 525,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18736,
      "end": 18737,
      "loc": {
        "start": {
          "line": 525,
          "column": 106
        },
        "end": {
          "line": 525,
          "column": 107
        }
      }
    },
    {
      "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": 18744,
      "end": 18749,
      "loc": {
        "start": {
          "line": 526,
          "column": 6
        },
        "end": {
          "line": 526,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociations",
      "start": 18750,
      "end": 18770,
      "loc": {
        "start": {
          "line": 526,
          "column": 12
        },
        "end": {
          "line": 526,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18771,
      "end": 18772,
      "loc": {
        "start": {
          "line": 526,
          "column": 33
        },
        "end": {
          "line": 526,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18773,
      "end": 18774,
      "loc": {
        "start": {
          "line": 526,
          "column": 35
        },
        "end": {
          "line": 526,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18774,
      "end": 18775,
      "loc": {
        "start": {
          "line": 526,
          "column": 36
        },
        "end": {
          "line": 526,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18775,
      "end": 18776,
      "loc": {
        "start": {
          "line": 526,
          "column": 37
        },
        "end": {
          "line": 526,
          "column": 38
        }
      }
    },
    {
      "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": 18783,
      "end": 18788,
      "loc": {
        "start": {
          "line": 527,
          "column": 6
        },
        "end": {
          "line": 527,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 18789,
      "end": 18797,
      "loc": {
        "start": {
          "line": 527,
          "column": 12
        },
        "end": {
          "line": 527,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18798,
      "end": 18799,
      "loc": {
        "start": {
          "line": 527,
          "column": 21
        },
        "end": {
          "line": 527,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18800,
      "end": 18801,
      "loc": {
        "start": {
          "line": 527,
          "column": 23
        },
        "end": {
          "line": 527,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18801,
      "end": 18802,
      "loc": {
        "start": {
          "line": 527,
          "column": 24
        },
        "end": {
          "line": 527,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18802,
      "end": 18803,
      "loc": {
        "start": {
          "line": 527,
          "column": 25
        },
        "end": {
          "line": 527,
          "column": 26
        }
      }
    },
    {
      "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": 18810,
      "end": 18813,
      "loc": {
        "start": {
          "line": 528,
          "column": 6
        },
        "end": {
          "line": 528,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 18814,
      "end": 18831,
      "loc": {
        "start": {
          "line": 528,
          "column": 10
        },
        "end": {
          "line": 528,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18832,
      "end": 18833,
      "loc": {
        "start": {
          "line": 528,
          "column": 28
        },
        "end": {
          "line": 528,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 18834,
      "end": 18841,
      "loc": {
        "start": {
          "line": 528,
          "column": 30
        },
        "end": {
          "line": 528,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18841,
      "end": 18842,
      "loc": {
        "start": {
          "line": 528,
          "column": 37
        },
        "end": {
          "line": 528,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 18842,
      "end": 18849,
      "loc": {
        "start": {
          "line": 528,
          "column": 38
        },
        "end": {
          "line": 528,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 18850,
      "end": 18852,
      "loc": {
        "start": {
          "line": 528,
          "column": 46
        },
        "end": {
          "line": 528,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18853,
      "end": 18854,
      "loc": {
        "start": {
          "line": 528,
          "column": 49
        },
        "end": {
          "line": 528,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18854,
      "end": 18855,
      "loc": {
        "start": {
          "line": 528,
          "column": 50
        },
        "end": {
          "line": 528,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18855,
      "end": 18856,
      "loc": {
        "start": {
          "line": 528,
          "column": 51
        },
        "end": {
          "line": 528,
          "column": 52
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Don't try to insert the transaction as an attribute in the through table",
      "start": 18864,
      "end": 18939,
      "loc": {
        "start": {
          "line": 530,
          "column": 6
        },
        "end": {
          "line": 530,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 18946,
      "end": 18963,
      "loc": {
        "start": {
          "line": 531,
          "column": 6
        },
        "end": {
          "line": 531,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 18964,
      "end": 18965,
      "loc": {
        "start": {
          "line": 531,
          "column": 24
        },
        "end": {
          "line": 531,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 18966,
      "end": 18967,
      "loc": {
        "start": {
          "line": 531,
          "column": 26
        },
        "end": {
          "line": 531,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18967,
      "end": 18968,
      "loc": {
        "start": {
          "line": 531,
          "column": 27
        },
        "end": {
          "line": 531,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "omit",
      "start": 18968,
      "end": 18972,
      "loc": {
        "start": {
          "line": 531,
          "column": 28
        },
        "end": {
          "line": 531,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 18972,
      "end": 18973,
      "loc": {
        "start": {
          "line": 531,
          "column": 32
        },
        "end": {
          "line": 531,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 18973,
      "end": 18990,
      "loc": {
        "start": {
          "line": 531,
          "column": 33
        },
        "end": {
          "line": 531,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18990,
      "end": 18991,
      "loc": {
        "start": {
          "line": 531,
          "column": 50
        },
        "end": {
          "line": 531,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 18992,
      "end": 18993,
      "loc": {
        "start": {
          "line": 531,
          "column": 52
        },
        "end": {
          "line": 531,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "transaction",
      "start": 18993,
      "end": 19006,
      "loc": {
        "start": {
          "line": 531,
          "column": 53
        },
        "end": {
          "line": 531,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19006,
      "end": 19007,
      "loc": {
        "start": {
          "line": 531,
          "column": 66
        },
        "end": {
          "line": 531,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hooks",
      "start": 19008,
      "end": 19015,
      "loc": {
        "start": {
          "line": 531,
          "column": 68
        },
        "end": {
          "line": 531,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19015,
      "end": 19016,
      "loc": {
        "start": {
          "line": 531,
          "column": 75
        },
        "end": {
          "line": 531,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "individualHooks",
      "start": 19017,
      "end": 19034,
      "loc": {
        "start": {
          "line": 531,
          "column": 77
        },
        "end": {
          "line": 531,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19034,
      "end": 19035,
      "loc": {
        "start": {
          "line": 531,
          "column": 94
        },
        "end": {
          "line": 531,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "ignoreDuplicates",
      "start": 19036,
      "end": 19054,
      "loc": {
        "start": {
          "line": 531,
          "column": 96
        },
        "end": {
          "line": 531,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19054,
      "end": 19055,
      "loc": {
        "start": {
          "line": 531,
          "column": 114
        },
        "end": {
          "line": 531,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "validate",
      "start": 19056,
      "end": 19066,
      "loc": {
        "start": {
          "line": 531,
          "column": 116
        },
        "end": {
          "line": 531,
          "column": 126
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19066,
      "end": 19067,
      "loc": {
        "start": {
          "line": 531,
          "column": 126
        },
        "end": {
          "line": 531,
          "column": 127
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "fields",
      "start": 19068,
      "end": 19076,
      "loc": {
        "start": {
          "line": 531,
          "column": 128
        },
        "end": {
          "line": 531,
          "column": 136
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19076,
      "end": 19077,
      "loc": {
        "start": {
          "line": 531,
          "column": 136
        },
        "end": {
          "line": 531,
          "column": 137
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "logging",
      "start": 19078,
      "end": 19087,
      "loc": {
        "start": {
          "line": 531,
          "column": 138
        },
        "end": {
          "line": 531,
          "column": 147
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19087,
      "end": 19088,
      "loc": {
        "start": {
          "line": 531,
          "column": 147
        },
        "end": {
          "line": 531,
          "column": 148
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19088,
      "end": 19089,
      "loc": {
        "start": {
          "line": 531,
          "column": 148
        },
        "end": {
          "line": 531,
          "column": 149
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19089,
      "end": 19090,
      "loc": {
        "start": {
          "line": 531,
          "column": 149
        },
        "end": {
          "line": 531,
          "column": 150
        }
      }
    },
    {
      "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": 19098,
      "end": 19103,
      "loc": {
        "start": {
          "line": 533,
          "column": 6
        },
        "end": {
          "line": 533,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 19104,
      "end": 19123,
      "loc": {
        "start": {
          "line": 533,
          "column": 12
        },
        "end": {
          "line": 533,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19124,
      "end": 19125,
      "loc": {
        "start": {
          "line": 533,
          "column": 32
        },
        "end": {
          "line": 533,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 19126,
      "end": 19146,
      "loc": {
        "start": {
          "line": 533,
          "column": 34
        },
        "end": {
          "line": 533,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19146,
      "end": 19147,
      "loc": {
        "start": {
          "line": 533,
          "column": 54
        },
        "end": {
          "line": 533,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "filter",
      "start": 19147,
      "end": 19153,
      "loc": {
        "start": {
          "line": 533,
          "column": 55
        },
        "end": {
          "line": 533,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19153,
      "end": 19154,
      "loc": {
        "start": {
          "line": 533,
          "column": 61
        },
        "end": {
          "line": 533,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 19154,
      "end": 19157,
      "loc": {
        "start": {
          "line": 533,
          "column": 62
        },
        "end": {
          "line": 533,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19158,
      "end": 19160,
      "loc": {
        "start": {
          "line": 533,
          "column": 66
        },
        "end": {
          "line": 533,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 19169,
      "end": 19170,
      "loc": {
        "start": {
          "line": 534,
          "column": 8
        },
        "end": {
          "line": 534,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 19170,
      "end": 19171,
      "loc": {
        "start": {
          "line": 534,
          "column": 9
        },
        "end": {
          "line": 534,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19171,
      "end": 19172,
      "loc": {
        "start": {
          "line": 534,
          "column": 10
        },
        "end": {
          "line": 534,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "find",
      "start": 19172,
      "end": 19176,
      "loc": {
        "start": {
          "line": 534,
          "column": 11
        },
        "end": {
          "line": 534,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19176,
      "end": 19177,
      "loc": {
        "start": {
          "line": 534,
          "column": 15
        },
        "end": {
          "line": 534,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRows",
      "start": 19177,
      "end": 19188,
      "loc": {
        "start": {
          "line": 534,
          "column": 16
        },
        "end": {
          "line": 534,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19188,
      "end": 19189,
      "loc": {
        "start": {
          "line": 534,
          "column": 27
        },
        "end": {
          "line": 534,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRow",
      "start": 19190,
      "end": 19200,
      "loc": {
        "start": {
          "line": 534,
          "column": 29
        },
        "end": {
          "line": 534,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19201,
      "end": 19203,
      "loc": {
        "start": {
          "line": 534,
          "column": 40
        },
        "end": {
          "line": 534,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRow",
      "start": 19204,
      "end": 19214,
      "loc": {
        "start": {
          "line": 534,
          "column": 43
        },
        "end": {
          "line": 534,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19214,
      "end": 19215,
      "loc": {
        "start": {
          "line": 534,
          "column": 53
        },
        "end": {
          "line": 534,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 19215,
      "end": 19232,
      "loc": {
        "start": {
          "line": 534,
          "column": 54
        },
        "end": {
          "line": 534,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19232,
      "end": 19233,
      "loc": {
        "start": {
          "line": 534,
          "column": 71
        },
        "end": {
          "line": 534,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 19234,
      "end": 19237,
      "loc": {
        "start": {
          "line": 534,
          "column": 73
        },
        "end": {
          "line": 534,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 19238,
      "end": 19241,
      "loc": {
        "start": {
          "line": 534,
          "column": 77
        },
        "end": {
          "line": 534,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19241,
      "end": 19242,
      "loc": {
        "start": {
          "line": 534,
          "column": 80
        },
        "end": {
          "line": 534,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 19242,
      "end": 19245,
      "loc": {
        "start": {
          "line": 534,
          "column": 81
        },
        "end": {
          "line": 534,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19245,
      "end": 19246,
      "loc": {
        "start": {
          "line": 534,
          "column": 84
        },
        "end": {
          "line": 534,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 19246,
      "end": 19255,
      "loc": {
        "start": {
          "line": 534,
          "column": 85
        },
        "end": {
          "line": 534,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19255,
      "end": 19256,
      "loc": {
        "start": {
          "line": 534,
          "column": 94
        },
        "end": {
          "line": 534,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19256,
      "end": 19257,
      "loc": {
        "start": {
          "line": 534,
          "column": 95
        },
        "end": {
          "line": 534,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19264,
      "end": 19265,
      "loc": {
        "start": {
          "line": 535,
          "column": 6
        },
        "end": {
          "line": 535,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19265,
      "end": 19266,
      "loc": {
        "start": {
          "line": 535,
          "column": 7
        },
        "end": {
          "line": 535,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 19274,
      "end": 19277,
      "loc": {
        "start": {
          "line": 537,
          "column": 6
        },
        "end": {
          "line": 537,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19278,
      "end": 19279,
      "loc": {
        "start": {
          "line": 537,
          "column": 10
        },
        "end": {
          "line": 537,
          "column": 11
        }
      }
    },
    {
      "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": 19279,
      "end": 19284,
      "loc": {
        "start": {
          "line": 537,
          "column": 11
        },
        "end": {
          "line": 537,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRow",
      "start": 19285,
      "end": 19295,
      "loc": {
        "start": {
          "line": 537,
          "column": 17
        },
        "end": {
          "line": 537,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "of",
      "start": 19296,
      "end": 19298,
      "loc": {
        "start": {
          "line": 537,
          "column": 28
        },
        "end": {
          "line": 537,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRows",
      "start": 19299,
      "end": 19310,
      "loc": {
        "start": {
          "line": 537,
          "column": 31
        },
        "end": {
          "line": 537,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19310,
      "end": 19311,
      "loc": {
        "start": {
          "line": 537,
          "column": 42
        },
        "end": {
          "line": 537,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19312,
      "end": 19313,
      "loc": {
        "start": {
          "line": 537,
          "column": 44
        },
        "end": {
          "line": 537,
          "column": 45
        }
      }
    },
    {
      "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": 19322,
      "end": 19327,
      "loc": {
        "start": {
          "line": 538,
          "column": 8
        },
        "end": {
          "line": 538,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newObj",
      "start": 19328,
      "end": 19334,
      "loc": {
        "start": {
          "line": 538,
          "column": 14
        },
        "end": {
          "line": 538,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19335,
      "end": 19336,
      "loc": {
        "start": {
          "line": 538,
          "column": 21
        },
        "end": {
          "line": 538,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 19337,
      "end": 19338,
      "loc": {
        "start": {
          "line": 538,
          "column": 23
        },
        "end": {
          "line": 538,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19338,
      "end": 19339,
      "loc": {
        "start": {
          "line": 538,
          "column": 24
        },
        "end": {
          "line": 538,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "find",
      "start": 19339,
      "end": 19343,
      "loc": {
        "start": {
          "line": 538,
          "column": 25
        },
        "end": {
          "line": 538,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19343,
      "end": 19344,
      "loc": {
        "start": {
          "line": 538,
          "column": 29
        },
        "end": {
          "line": 538,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObjects",
      "start": 19344,
      "end": 19364,
      "loc": {
        "start": {
          "line": 538,
          "column": 30
        },
        "end": {
          "line": 538,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19364,
      "end": 19365,
      "loc": {
        "start": {
          "line": 538,
          "column": 50
        },
        "end": {
          "line": 538,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 19366,
      "end": 19369,
      "loc": {
        "start": {
          "line": 538,
          "column": 52
        },
        "end": {
          "line": 538,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19370,
      "end": 19372,
      "loc": {
        "start": {
          "line": 538,
          "column": 56
        },
        "end": {
          "line": 538,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRow",
      "start": 19373,
      "end": 19383,
      "loc": {
        "start": {
          "line": 538,
          "column": 59
        },
        "end": {
          "line": 538,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19383,
      "end": 19384,
      "loc": {
        "start": {
          "line": 538,
          "column": 69
        },
        "end": {
          "line": 538,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 19384,
      "end": 19401,
      "loc": {
        "start": {
          "line": 538,
          "column": 70
        },
        "end": {
          "line": 538,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19401,
      "end": 19402,
      "loc": {
        "start": {
          "line": 538,
          "column": 87
        },
        "end": {
          "line": 538,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 19403,
      "end": 19406,
      "loc": {
        "start": {
          "line": 538,
          "column": 89
        },
        "end": {
          "line": 538,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 19407,
      "end": 19410,
      "loc": {
        "start": {
          "line": 538,
          "column": 93
        },
        "end": {
          "line": 538,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19410,
      "end": 19411,
      "loc": {
        "start": {
          "line": 538,
          "column": 96
        },
        "end": {
          "line": 538,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 19411,
      "end": 19414,
      "loc": {
        "start": {
          "line": 538,
          "column": 97
        },
        "end": {
          "line": 538,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19414,
      "end": 19415,
      "loc": {
        "start": {
          "line": 538,
          "column": 100
        },
        "end": {
          "line": 538,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 19415,
      "end": 19424,
      "loc": {
        "start": {
          "line": 538,
          "column": 101
        },
        "end": {
          "line": 538,
          "column": 110
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19424,
      "end": 19425,
      "loc": {
        "start": {
          "line": 538,
          "column": 110
        },
        "end": {
          "line": 538,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19425,
      "end": 19426,
      "loc": {
        "start": {
          "line": 538,
          "column": 111
        },
        "end": {
          "line": 538,
          "column": 112
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19426,
      "end": 19427,
      "loc": {
        "start": {
          "line": 538,
          "column": 112
        },
        "end": {
          "line": 538,
          "column": 113
        }
      }
    },
    {
      "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": 19437,
      "end": 19439,
      "loc": {
        "start": {
          "line": 540,
          "column": 8
        },
        "end": {
          "line": 540,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19440,
      "end": 19441,
      "loc": {
        "start": {
          "line": 540,
          "column": 11
        },
        "end": {
          "line": 540,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 19441,
      "end": 19442,
      "loc": {
        "start": {
          "line": 540,
          "column": 12
        },
        "end": {
          "line": 540,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newObj",
      "start": 19442,
      "end": 19448,
      "loc": {
        "start": {
          "line": 540,
          "column": 13
        },
        "end": {
          "line": 540,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19448,
      "end": 19449,
      "loc": {
        "start": {
          "line": 540,
          "column": 19
        },
        "end": {
          "line": 540,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19450,
      "end": 19451,
      "loc": {
        "start": {
          "line": 540,
          "column": 21
        },
        "end": {
          "line": 540,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociations",
      "start": 19462,
      "end": 19482,
      "loc": {
        "start": {
          "line": 541,
          "column": 10
        },
        "end": {
          "line": 541,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19482,
      "end": 19483,
      "loc": {
        "start": {
          "line": 541,
          "column": 30
        },
        "end": {
          "line": 541,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 19483,
      "end": 19487,
      "loc": {
        "start": {
          "line": 541,
          "column": 31
        },
        "end": {
          "line": 541,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19487,
      "end": 19488,
      "loc": {
        "start": {
          "line": 541,
          "column": 35
        },
        "end": {
          "line": 541,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRow",
      "start": 19488,
      "end": 19498,
      "loc": {
        "start": {
          "line": 541,
          "column": 36
        },
        "end": {
          "line": 541,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19498,
      "end": 19499,
      "loc": {
        "start": {
          "line": 541,
          "column": 46
        },
        "end": {
          "line": 541,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19499,
      "end": 19500,
      "loc": {
        "start": {
          "line": 541,
          "column": 47
        },
        "end": {
          "line": 541,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19509,
      "end": 19510,
      "loc": {
        "start": {
          "line": 542,
          "column": 8
        },
        "end": {
          "line": 542,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 19511,
      "end": 19515,
      "loc": {
        "start": {
          "line": 542,
          "column": 10
        },
        "end": {
          "line": 542,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19516,
      "end": 19517,
      "loc": {
        "start": {
          "line": 542,
          "column": 15
        },
        "end": {
          "line": 542,
          "column": 16
        }
      }
    },
    {
      "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": 19528,
      "end": 19531,
      "loc": {
        "start": {
          "line": 543,
          "column": 10
        },
        "end": {
          "line": 543,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 19532,
      "end": 19549,
      "loc": {
        "start": {
          "line": 543,
          "column": 14
        },
        "end": {
          "line": 543,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19550,
      "end": 19551,
      "loc": {
        "start": {
          "line": 543,
          "column": 32
        },
        "end": {
          "line": 543,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newObj",
      "start": 19552,
      "end": 19558,
      "loc": {
        "start": {
          "line": 543,
          "column": 34
        },
        "end": {
          "line": 543,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19558,
      "end": 19559,
      "loc": {
        "start": {
          "line": 543,
          "column": 40
        },
        "end": {
          "line": 543,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 19559,
      "end": 19570,
      "loc": {
        "start": {
          "line": 543,
          "column": 41
        },
        "end": {
          "line": 543,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19570,
      "end": 19571,
      "loc": {
        "start": {
          "line": 543,
          "column": 52
        },
        "end": {
          "line": 543,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 19571,
      "end": 19578,
      "loc": {
        "start": {
          "line": 543,
          "column": 53
        },
        "end": {
          "line": 543,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19578,
      "end": 19579,
      "loc": {
        "start": {
          "line": 543,
          "column": 60
        },
        "end": {
          "line": 543,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 19579,
      "end": 19584,
      "loc": {
        "start": {
          "line": 543,
          "column": 61
        },
        "end": {
          "line": 543,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19584,
      "end": 19585,
      "loc": {
        "start": {
          "line": 543,
          "column": 66
        },
        "end": {
          "line": 543,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 19585,
      "end": 19589,
      "loc": {
        "start": {
          "line": 543,
          "column": 67
        },
        "end": {
          "line": 543,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19589,
      "end": 19590,
      "loc": {
        "start": {
          "line": 543,
          "column": 71
        },
        "end": {
          "line": 543,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19590,
      "end": 19591,
      "loc": {
        "start": {
          "line": 543,
          "column": 72
        },
        "end": {
          "line": 543,
          "column": 73
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
      "start": 19602,
      "end": 19729,
      "loc": {
        "start": {
          "line": 544,
          "column": 10
        },
        "end": {
          "line": 544,
          "column": 137
        }
      }
    },
    {
      "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": 19740,
      "end": 19742,
      "loc": {
        "start": {
          "line": 545,
          "column": 10
        },
        "end": {
          "line": 545,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19743,
      "end": 19744,
      "loc": {
        "start": {
          "line": 545,
          "column": 13
        },
        "end": {
          "line": 545,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 19744,
      "end": 19761,
      "loc": {
        "start": {
          "line": 545,
          "column": 14
        },
        "end": {
          "line": 545,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "instanceof",
        "keyword": "instanceof",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "instanceof",
      "start": 19762,
      "end": 19772,
      "loc": {
        "start": {
          "line": 545,
          "column": 32
        },
        "end": {
          "line": 545,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 19773,
      "end": 19784,
      "loc": {
        "start": {
          "line": 545,
          "column": 43
        },
        "end": {
          "line": 545,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19784,
      "end": 19785,
      "loc": {
        "start": {
          "line": 545,
          "column": 54
        },
        "end": {
          "line": 545,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 19785,
      "end": 19792,
      "loc": {
        "start": {
          "line": 545,
          "column": 55
        },
        "end": {
          "line": 545,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19792,
      "end": 19793,
      "loc": {
        "start": {
          "line": 545,
          "column": 62
        },
        "end": {
          "line": 545,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 19793,
      "end": 19798,
      "loc": {
        "start": {
          "line": 545,
          "column": 63
        },
        "end": {
          "line": 545,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19798,
      "end": 19799,
      "loc": {
        "start": {
          "line": 545,
          "column": 68
        },
        "end": {
          "line": 545,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19800,
      "end": 19801,
      "loc": {
        "start": {
          "line": 545,
          "column": 70
        },
        "end": {
          "line": 545,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 19814,
      "end": 19831,
      "loc": {
        "start": {
          "line": 546,
          "column": 12
        },
        "end": {
          "line": 546,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19832,
      "end": 19833,
      "loc": {
        "start": {
          "line": 546,
          "column": 30
        },
        "end": {
          "line": 546,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19834,
      "end": 19835,
      "loc": {
        "start": {
          "line": 546,
          "column": 32
        },
        "end": {
          "line": 546,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19835,
      "end": 19836,
      "loc": {
        "start": {
          "line": 546,
          "column": 33
        },
        "end": {
          "line": 546,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19836,
      "end": 19837,
      "loc": {
        "start": {
          "line": 546,
          "column": 34
        },
        "end": {
          "line": 546,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19848,
      "end": 19849,
      "loc": {
        "start": {
          "line": 547,
          "column": 10
        },
        "end": {
          "line": 547,
          "column": 11
        }
      }
    },
    {
      "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": 19861,
      "end": 19866,
      "loc": {
        "start": {
          "line": 549,
          "column": 10
        },
        "end": {
          "line": 549,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 19867,
      "end": 19872,
      "loc": {
        "start": {
          "line": 549,
          "column": 16
        },
        "end": {
          "line": 549,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19873,
      "end": 19874,
      "loc": {
        "start": {
          "line": 549,
          "column": 22
        },
        "end": {
          "line": 549,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19875,
      "end": 19876,
      "loc": {
        "start": {
          "line": 549,
          "column": 24
        },
        "end": {
          "line": 549,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19876,
      "end": 19877,
      "loc": {
        "start": {
          "line": 549,
          "column": 25
        },
        "end": {
          "line": 549,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19877,
      "end": 19878,
      "loc": {
        "start": {
          "line": 549,
          "column": 26
        },
        "end": {
          "line": 549,
          "column": 27
        }
      }
    },
    {
      "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": 19889,
      "end": 19894,
      "loc": {
        "start": {
          "line": 550,
          "column": 10
        },
        "end": {
          "line": 550,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 19895,
      "end": 19905,
      "loc": {
        "start": {
          "line": 550,
          "column": 16
        },
        "end": {
          "line": 550,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19906,
      "end": 19907,
      "loc": {
        "start": {
          "line": 550,
          "column": 27
        },
        "end": {
          "line": 550,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 19908,
      "end": 19909,
      "loc": {
        "start": {
          "line": 550,
          "column": 29
        },
        "end": {
          "line": 550,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19909,
      "end": 19910,
      "loc": {
        "start": {
          "line": 550,
          "column": 30
        },
        "end": {
          "line": 550,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 19910,
      "end": 19918,
      "loc": {
        "start": {
          "line": 550,
          "column": 31
        },
        "end": {
          "line": 550,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19918,
      "end": 19919,
      "loc": {
        "start": {
          "line": 550,
          "column": 39
        },
        "end": {
          "line": 550,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19919,
      "end": 19920,
      "loc": {
        "start": {
          "line": 550,
          "column": 40
        },
        "end": {
          "line": 550,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19920,
      "end": 19921,
      "loc": {
        "start": {
          "line": 550,
          "column": 41
        },
        "end": {
          "line": 550,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19921,
      "end": 19922,
      "loc": {
        "start": {
          "line": 550,
          "column": 42
        },
        "end": {
          "line": 550,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 19923,
      "end": 19940,
      "loc": {
        "start": {
          "line": 550,
          "column": 44
        },
        "end": {
          "line": 550,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19940,
      "end": 19941,
      "loc": {
        "start": {
          "line": 550,
          "column": 61
        },
        "end": {
          "line": 550,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 19942,
      "end": 19959,
      "loc": {
        "start": {
          "line": 550,
          "column": 63
        },
        "end": {
          "line": 550,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 19959,
      "end": 19960,
      "loc": {
        "start": {
          "line": 550,
          "column": 80
        },
        "end": {
          "line": 550,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19960,
      "end": 19961,
      "loc": {
        "start": {
          "line": 550,
          "column": 81
        },
        "end": {
          "line": 550,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 19973,
      "end": 19978,
      "loc": {
        "start": {
          "line": 552,
          "column": 10
        },
        "end": {
          "line": 552,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19978,
      "end": 19979,
      "loc": {
        "start": {
          "line": 552,
          "column": 15
        },
        "end": {
          "line": 552,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 19979,
      "end": 19989,
      "loc": {
        "start": {
          "line": 552,
          "column": 16
        },
        "end": {
          "line": 552,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 19989,
      "end": 19990,
      "loc": {
        "start": {
          "line": 552,
          "column": 26
        },
        "end": {
          "line": 552,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 19991,
      "end": 19992,
      "loc": {
        "start": {
          "line": 552,
          "column": 28
        },
        "end": {
          "line": 552,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 19993,
      "end": 20007,
      "loc": {
        "start": {
          "line": 552,
          "column": 30
        },
        "end": {
          "line": 552,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20007,
      "end": 20008,
      "loc": {
        "start": {
          "line": 552,
          "column": 44
        },
        "end": {
          "line": 552,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 20008,
      "end": 20011,
      "loc": {
        "start": {
          "line": 552,
          "column": 45
        },
        "end": {
          "line": 552,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20011,
      "end": 20012,
      "loc": {
        "start": {
          "line": 552,
          "column": 48
        },
        "end": {
          "line": 552,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 20012,
      "end": 20021,
      "loc": {
        "start": {
          "line": 552,
          "column": 49
        },
        "end": {
          "line": 552,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20021,
      "end": 20022,
      "loc": {
        "start": {
          "line": 552,
          "column": 58
        },
        "end": {
          "line": 552,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20022,
      "end": 20023,
      "loc": {
        "start": {
          "line": 552,
          "column": 59
        },
        "end": {
          "line": 552,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20034,
      "end": 20039,
      "loc": {
        "start": {
          "line": 553,
          "column": 10
        },
        "end": {
          "line": 553,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20039,
      "end": 20040,
      "loc": {
        "start": {
          "line": 553,
          "column": 15
        },
        "end": {
          "line": 553,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 20040,
      "end": 20057,
      "loc": {
        "start": {
          "line": 553,
          "column": 16
        },
        "end": {
          "line": 553,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20057,
      "end": 20058,
      "loc": {
        "start": {
          "line": 553,
          "column": 33
        },
        "end": {
          "line": 553,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20059,
      "end": 20060,
      "loc": {
        "start": {
          "line": 553,
          "column": 35
        },
        "end": {
          "line": 553,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newObj",
      "start": 20061,
      "end": 20067,
      "loc": {
        "start": {
          "line": 553,
          "column": 37
        },
        "end": {
          "line": 553,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20067,
      "end": 20068,
      "loc": {
        "start": {
          "line": 553,
          "column": 43
        },
        "end": {
          "line": 553,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 20068,
      "end": 20071,
      "loc": {
        "start": {
          "line": 553,
          "column": 44
        },
        "end": {
          "line": 553,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20071,
      "end": 20072,
      "loc": {
        "start": {
          "line": 553,
          "column": 47
        },
        "end": {
          "line": 553,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 20072,
      "end": 20081,
      "loc": {
        "start": {
          "line": 553,
          "column": 48
        },
        "end": {
          "line": 553,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20081,
      "end": 20082,
      "loc": {
        "start": {
          "line": 553,
          "column": 57
        },
        "end": {
          "line": 553,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20082,
      "end": 20083,
      "loc": {
        "start": {
          "line": 553,
          "column": 58
        },
        "end": {
          "line": 553,
          "column": 59
        }
      }
    },
    {
      "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": 20095,
      "end": 20097,
      "loc": {
        "start": {
          "line": 555,
          "column": 10
        },
        "end": {
          "line": 555,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20098,
      "end": 20099,
      "loc": {
        "start": {
          "line": 555,
          "column": 13
        },
        "end": {
          "line": 555,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 20099,
      "end": 20105,
      "loc": {
        "start": {
          "line": 555,
          "column": 14
        },
        "end": {
          "line": 555,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20105,
      "end": 20106,
      "loc": {
        "start": {
          "line": 555,
          "column": 20
        },
        "end": {
          "line": 555,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 20106,
      "end": 20110,
      "loc": {
        "start": {
          "line": 555,
          "column": 21
        },
        "end": {
          "line": 555,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20110,
      "end": 20111,
      "loc": {
        "start": {
          "line": 555,
          "column": 25
        },
        "end": {
          "line": 555,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20111,
      "end": 20121,
      "loc": {
        "start": {
          "line": 555,
          "column": 26
        },
        "end": {
          "line": 555,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20121,
      "end": 20122,
      "loc": {
        "start": {
          "line": 555,
          "column": 36
        },
        "end": {
          "line": 555,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20122,
      "end": 20123,
      "loc": {
        "start": {
          "line": 555,
          "column": 37
        },
        "end": {
          "line": 555,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 20123,
      "end": 20129,
      "loc": {
        "start": {
          "line": 555,
          "column": 38
        },
        "end": {
          "line": 555,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20129,
      "end": 20130,
      "loc": {
        "start": {
          "line": 555,
          "column": 44
        },
        "end": {
          "line": 555,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20131,
      "end": 20132,
      "loc": {
        "start": {
          "line": 555,
          "column": 46
        },
        "end": {
          "line": 555,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 20145,
      "end": 20153,
      "loc": {
        "start": {
          "line": 556,
          "column": 12
        },
        "end": {
          "line": 556,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20153,
      "end": 20154,
      "loc": {
        "start": {
          "line": 556,
          "column": 20
        },
        "end": {
          "line": 556,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 20154,
      "end": 20158,
      "loc": {
        "start": {
          "line": 556,
          "column": 21
        },
        "end": {
          "line": 556,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20158,
      "end": 20159,
      "loc": {
        "start": {
          "line": 556,
          "column": 25
        },
        "end": {
          "line": 556,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 20159,
      "end": 20170,
      "loc": {
        "start": {
          "line": 556,
          "column": 26
        },
        "end": {
          "line": 556,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20170,
      "end": 20171,
      "loc": {
        "start": {
          "line": 556,
          "column": 37
        },
        "end": {
          "line": 556,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 20171,
      "end": 20178,
      "loc": {
        "start": {
          "line": 556,
          "column": 38
        },
        "end": {
          "line": 556,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20178,
      "end": 20179,
      "loc": {
        "start": {
          "line": 556,
          "column": 45
        },
        "end": {
          "line": 556,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 20179,
      "end": 20184,
      "loc": {
        "start": {
          "line": 556,
          "column": 46
        },
        "end": {
          "line": 556,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20184,
      "end": 20185,
      "loc": {
        "start": {
          "line": 556,
          "column": 51
        },
        "end": {
          "line": 556,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "update",
      "start": 20185,
      "end": 20191,
      "loc": {
        "start": {
          "line": 556,
          "column": 52
        },
        "end": {
          "line": 556,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20191,
      "end": 20192,
      "loc": {
        "start": {
          "line": 556,
          "column": 58
        },
        "end": {
          "line": 556,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20192,
      "end": 20202,
      "loc": {
        "start": {
          "line": 556,
          "column": 59
        },
        "end": {
          "line": 556,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20202,
      "end": 20203,
      "loc": {
        "start": {
          "line": 556,
          "column": 69
        },
        "end": {
          "line": 556,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 20204,
      "end": 20205,
      "loc": {
        "start": {
          "line": 556,
          "column": 71
        },
        "end": {
          "line": 556,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20205,
      "end": 20206,
      "loc": {
        "start": {
          "line": 556,
          "column": 72
        },
        "end": {
          "line": 556,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "extend",
      "start": 20206,
      "end": 20212,
      "loc": {
        "start": {
          "line": 556,
          "column": 73
        },
        "end": {
          "line": 556,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20212,
      "end": 20213,
      "loc": {
        "start": {
          "line": 556,
          "column": 79
        },
        "end": {
          "line": 556,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 20213,
      "end": 20220,
      "loc": {
        "start": {
          "line": 556,
          "column": 80
        },
        "end": {
          "line": 556,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20220,
      "end": 20221,
      "loc": {
        "start": {
          "line": 556,
          "column": 87
        },
        "end": {
          "line": 556,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20222,
      "end": 20223,
      "loc": {
        "start": {
          "line": 556,
          "column": 89
        },
        "end": {
          "line": 556,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20223,
      "end": 20228,
      "loc": {
        "start": {
          "line": 556,
          "column": 90
        },
        "end": {
          "line": 556,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20228,
      "end": 20229,
      "loc": {
        "start": {
          "line": 556,
          "column": 95
        },
        "end": {
          "line": 556,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20229,
      "end": 20230,
      "loc": {
        "start": {
          "line": 556,
          "column": 96
        },
        "end": {
          "line": 556,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20230,
      "end": 20231,
      "loc": {
        "start": {
          "line": 556,
          "column": 97
        },
        "end": {
          "line": 556,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20231,
      "end": 20232,
      "loc": {
        "start": {
          "line": 556,
          "column": 98
        },
        "end": {
          "line": 556,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20232,
      "end": 20233,
      "loc": {
        "start": {
          "line": 556,
          "column": 99
        },
        "end": {
          "line": 556,
          "column": 100
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20244,
      "end": 20245,
      "loc": {
        "start": {
          "line": 557,
          "column": 10
        },
        "end": {
          "line": 557,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20254,
      "end": 20255,
      "loc": {
        "start": {
          "line": 558,
          "column": 8
        },
        "end": {
          "line": 558,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20262,
      "end": 20263,
      "loc": {
        "start": {
          "line": 559,
          "column": 6
        },
        "end": {
          "line": 559,
          "column": 7
        }
      }
    },
    {
      "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": 20271,
      "end": 20273,
      "loc": {
        "start": {
          "line": 561,
          "column": 6
        },
        "end": {
          "line": 561,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20274,
      "end": 20275,
      "loc": {
        "start": {
          "line": 561,
          "column": 9
        },
        "end": {
          "line": 561,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociations",
      "start": 20275,
      "end": 20295,
      "loc": {
        "start": {
          "line": 561,
          "column": 10
        },
        "end": {
          "line": 561,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20295,
      "end": 20296,
      "loc": {
        "start": {
          "line": 561,
          "column": 30
        },
        "end": {
          "line": 561,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 20296,
      "end": 20302,
      "loc": {
        "start": {
          "line": 561,
          "column": 31
        },
        "end": {
          "line": 561,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 20303,
      "end": 20304,
      "loc": {
        "start": {
          "line": 561,
          "column": 38
        },
        "end": {
          "line": 561,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 20305,
      "end": 20306,
      "loc": {
        "start": {
          "line": 561,
          "column": 40
        },
        "end": {
          "line": 561,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20306,
      "end": 20307,
      "loc": {
        "start": {
          "line": 561,
          "column": 41
        },
        "end": {
          "line": 561,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20308,
      "end": 20309,
      "loc": {
        "start": {
          "line": 561,
          "column": 43
        },
        "end": {
          "line": 561,
          "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": 20318,
      "end": 20323,
      "loc": {
        "start": {
          "line": 562,
          "column": 8
        },
        "end": {
          "line": 562,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20324,
      "end": 20329,
      "loc": {
        "start": {
          "line": 562,
          "column": 14
        },
        "end": {
          "line": 562,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20330,
      "end": 20331,
      "loc": {
        "start": {
          "line": 562,
          "column": 20
        },
        "end": {
          "line": 562,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20332,
      "end": 20333,
      "loc": {
        "start": {
          "line": 562,
          "column": 22
        },
        "end": {
          "line": 562,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20333,
      "end": 20334,
      "loc": {
        "start": {
          "line": 562,
          "column": 23
        },
        "end": {
          "line": 562,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20334,
      "end": 20335,
      "loc": {
        "start": {
          "line": 562,
          "column": 24
        },
        "end": {
          "line": 562,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20344,
      "end": 20349,
      "loc": {
        "start": {
          "line": 563,
          "column": 8
        },
        "end": {
          "line": 563,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20349,
      "end": 20350,
      "loc": {
        "start": {
          "line": 563,
          "column": 13
        },
        "end": {
          "line": 563,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 20350,
      "end": 20360,
      "loc": {
        "start": {
          "line": 563,
          "column": 14
        },
        "end": {
          "line": 563,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20360,
      "end": 20361,
      "loc": {
        "start": {
          "line": 563,
          "column": 24
        },
        "end": {
          "line": 563,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20362,
      "end": 20363,
      "loc": {
        "start": {
          "line": 563,
          "column": 26
        },
        "end": {
          "line": 563,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 20364,
      "end": 20378,
      "loc": {
        "start": {
          "line": 563,
          "column": 28
        },
        "end": {
          "line": 563,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20378,
      "end": 20379,
      "loc": {
        "start": {
          "line": 563,
          "column": 42
        },
        "end": {
          "line": 563,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 20379,
      "end": 20382,
      "loc": {
        "start": {
          "line": 563,
          "column": 43
        },
        "end": {
          "line": 563,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20382,
      "end": 20383,
      "loc": {
        "start": {
          "line": 563,
          "column": 46
        },
        "end": {
          "line": 563,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 20383,
      "end": 20392,
      "loc": {
        "start": {
          "line": 563,
          "column": 47
        },
        "end": {
          "line": 563,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20392,
      "end": 20393,
      "loc": {
        "start": {
          "line": 563,
          "column": 56
        },
        "end": {
          "line": 563,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20393,
      "end": 20394,
      "loc": {
        "start": {
          "line": 563,
          "column": 57
        },
        "end": {
          "line": 563,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20403,
      "end": 20408,
      "loc": {
        "start": {
          "line": 564,
          "column": 8
        },
        "end": {
          "line": 564,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20408,
      "end": 20409,
      "loc": {
        "start": {
          "line": 564,
          "column": 13
        },
        "end": {
          "line": 564,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 20409,
      "end": 20426,
      "loc": {
        "start": {
          "line": 564,
          "column": 14
        },
        "end": {
          "line": 564,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20426,
      "end": 20427,
      "loc": {
        "start": {
          "line": 564,
          "column": 31
        },
        "end": {
          "line": 564,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20428,
      "end": 20429,
      "loc": {
        "start": {
          "line": 564,
          "column": 33
        },
        "end": {
          "line": 564,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociations",
      "start": 20430,
      "end": 20450,
      "loc": {
        "start": {
          "line": 564,
          "column": 35
        },
        "end": {
          "line": 564,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20450,
      "end": 20451,
      "loc": {
        "start": {
          "line": 564,
          "column": 55
        },
        "end": {
          "line": 564,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 20451,
      "end": 20454,
      "loc": {
        "start": {
          "line": 564,
          "column": 56
        },
        "end": {
          "line": 564,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20454,
      "end": 20455,
      "loc": {
        "start": {
          "line": 564,
          "column": 59
        },
        "end": {
          "line": 564,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociation",
      "start": 20455,
      "end": 20474,
      "loc": {
        "start": {
          "line": 564,
          "column": 60
        },
        "end": {
          "line": 564,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20475,
      "end": 20477,
      "loc": {
        "start": {
          "line": 564,
          "column": 80
        },
        "end": {
          "line": 564,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obsoleteAssociation",
      "start": 20478,
      "end": 20497,
      "loc": {
        "start": {
          "line": 564,
          "column": 83
        },
        "end": {
          "line": 564,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20497,
      "end": 20498,
      "loc": {
        "start": {
          "line": 564,
          "column": 102
        },
        "end": {
          "line": 564,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 20498,
      "end": 20515,
      "loc": {
        "start": {
          "line": 564,
          "column": 103
        },
        "end": {
          "line": 564,
          "column": 120
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20515,
      "end": 20516,
      "loc": {
        "start": {
          "line": 564,
          "column": 120
        },
        "end": {
          "line": 564,
          "column": 121
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20516,
      "end": 20517,
      "loc": {
        "start": {
          "line": 564,
          "column": 121
        },
        "end": {
          "line": 564,
          "column": 122
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20517,
      "end": 20518,
      "loc": {
        "start": {
          "line": 564,
          "column": 122
        },
        "end": {
          "line": 564,
          "column": 123
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 20528,
      "end": 20536,
      "loc": {
        "start": {
          "line": 566,
          "column": 8
        },
        "end": {
          "line": 566,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20536,
      "end": 20537,
      "loc": {
        "start": {
          "line": 566,
          "column": 16
        },
        "end": {
          "line": 566,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 20537,
      "end": 20541,
      "loc": {
        "start": {
          "line": 566,
          "column": 17
        },
        "end": {
          "line": 566,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20541,
      "end": 20542,
      "loc": {
        "start": {
          "line": 566,
          "column": 21
        },
        "end": {
          "line": 566,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 20542,
      "end": 20553,
      "loc": {
        "start": {
          "line": 566,
          "column": 22
        },
        "end": {
          "line": 566,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20553,
      "end": 20554,
      "loc": {
        "start": {
          "line": 566,
          "column": 33
        },
        "end": {
          "line": 566,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 20554,
      "end": 20561,
      "loc": {
        "start": {
          "line": 566,
          "column": 34
        },
        "end": {
          "line": 566,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20561,
      "end": 20562,
      "loc": {
        "start": {
          "line": 566,
          "column": 41
        },
        "end": {
          "line": 566,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 20562,
      "end": 20567,
      "loc": {
        "start": {
          "line": 566,
          "column": 42
        },
        "end": {
          "line": 566,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20567,
      "end": 20568,
      "loc": {
        "start": {
          "line": 566,
          "column": 47
        },
        "end": {
          "line": 566,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "destroy",
      "start": 20568,
      "end": 20575,
      "loc": {
        "start": {
          "line": 566,
          "column": 48
        },
        "end": {
          "line": 566,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20575,
      "end": 20576,
      "loc": {
        "start": {
          "line": 566,
          "column": 55
        },
        "end": {
          "line": 566,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 20576,
      "end": 20577,
      "loc": {
        "start": {
          "line": 566,
          "column": 56
        },
        "end": {
          "line": 566,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20577,
      "end": 20578,
      "loc": {
        "start": {
          "line": 566,
          "column": 57
        },
        "end": {
          "line": 566,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 20578,
      "end": 20586,
      "loc": {
        "start": {
          "line": 566,
          "column": 58
        },
        "end": {
          "line": 566,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20586,
      "end": 20587,
      "loc": {
        "start": {
          "line": 566,
          "column": 66
        },
        "end": {
          "line": 566,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20587,
      "end": 20588,
      "loc": {
        "start": {
          "line": 566,
          "column": 67
        },
        "end": {
          "line": 566,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 20588,
      "end": 20593,
      "loc": {
        "start": {
          "line": 566,
          "column": 68
        },
        "end": {
          "line": 566,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20593,
      "end": 20594,
      "loc": {
        "start": {
          "line": 566,
          "column": 73
        },
        "end": {
          "line": 566,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20594,
      "end": 20595,
      "loc": {
        "start": {
          "line": 566,
          "column": 74
        },
        "end": {
          "line": 566,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 20596,
      "end": 20603,
      "loc": {
        "start": {
          "line": 566,
          "column": 76
        },
        "end": {
          "line": 566,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20603,
      "end": 20604,
      "loc": {
        "start": {
          "line": 566,
          "column": 83
        },
        "end": {
          "line": 566,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20604,
      "end": 20605,
      "loc": {
        "start": {
          "line": 566,
          "column": 84
        },
        "end": {
          "line": 566,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20605,
      "end": 20606,
      "loc": {
        "start": {
          "line": 566,
          "column": 85
        },
        "end": {
          "line": 566,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20606,
      "end": 20607,
      "loc": {
        "start": {
          "line": 566,
          "column": 86
        },
        "end": {
          "line": 566,
          "column": 87
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20614,
      "end": 20615,
      "loc": {
        "start": {
          "line": 567,
          "column": 6
        },
        "end": {
          "line": 567,
          "column": 7
        }
      }
    },
    {
      "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": 20623,
      "end": 20625,
      "loc": {
        "start": {
          "line": 569,
          "column": 6
        },
        "end": {
          "line": 569,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20626,
      "end": 20627,
      "loc": {
        "start": {
          "line": 569,
          "column": 9
        },
        "end": {
          "line": 569,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 20627,
      "end": 20646,
      "loc": {
        "start": {
          "line": 569,
          "column": 10
        },
        "end": {
          "line": 569,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20646,
      "end": 20647,
      "loc": {
        "start": {
          "line": 569,
          "column": 29
        },
        "end": {
          "line": 569,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 20647,
      "end": 20653,
      "loc": {
        "start": {
          "line": 569,
          "column": 30
        },
        "end": {
          "line": 569,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 20654,
      "end": 20655,
      "loc": {
        "start": {
          "line": 569,
          "column": 37
        },
        "end": {
          "line": 569,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 20656,
      "end": 20657,
      "loc": {
        "start": {
          "line": 569,
          "column": 39
        },
        "end": {
          "line": 569,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20657,
      "end": 20658,
      "loc": {
        "start": {
          "line": 569,
          "column": 40
        },
        "end": {
          "line": 569,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20659,
      "end": 20660,
      "loc": {
        "start": {
          "line": 569,
          "column": 42
        },
        "end": {
          "line": 569,
          "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": 20669,
      "end": 20674,
      "loc": {
        "start": {
          "line": 570,
          "column": 8
        },
        "end": {
          "line": 570,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulk",
      "start": 20675,
      "end": 20679,
      "loc": {
        "start": {
          "line": 570,
          "column": 14
        },
        "end": {
          "line": 570,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20680,
      "end": 20681,
      "loc": {
        "start": {
          "line": 570,
          "column": 19
        },
        "end": {
          "line": 570,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 20682,
      "end": 20701,
      "loc": {
        "start": {
          "line": 570,
          "column": 21
        },
        "end": {
          "line": 570,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20701,
      "end": 20702,
      "loc": {
        "start": {
          "line": 570,
          "column": 40
        },
        "end": {
          "line": 570,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 20702,
      "end": 20705,
      "loc": {
        "start": {
          "line": 570,
          "column": 41
        },
        "end": {
          "line": 570,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20705,
      "end": 20706,
      "loc": {
        "start": {
          "line": 570,
          "column": 44
        },
        "end": {
          "line": 570,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 20706,
      "end": 20724,
      "loc": {
        "start": {
          "line": 570,
          "column": 45
        },
        "end": {
          "line": 570,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20725,
      "end": 20727,
      "loc": {
        "start": {
          "line": 570,
          "column": 64
        },
        "end": {
          "line": 570,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20728,
      "end": 20729,
      "loc": {
        "start": {
          "line": 570,
          "column": 67
        },
        "end": {
          "line": 570,
          "column": 68
        }
      }
    },
    {
      "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": 20740,
      "end": 20743,
      "loc": {
        "start": {
          "line": 571,
          "column": 10
        },
        "end": {
          "line": 571,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20744,
      "end": 20754,
      "loc": {
        "start": {
          "line": 571,
          "column": 14
        },
        "end": {
          "line": 571,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20755,
      "end": 20756,
      "loc": {
        "start": {
          "line": 571,
          "column": 25
        },
        "end": {
          "line": 571,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20757,
      "end": 20758,
      "loc": {
        "start": {
          "line": 571,
          "column": 27
        },
        "end": {
          "line": 571,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20758,
      "end": 20759,
      "loc": {
        "start": {
          "line": 571,
          "column": 28
        },
        "end": {
          "line": 571,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20759,
      "end": 20760,
      "loc": {
        "start": {
          "line": 571,
          "column": 29
        },
        "end": {
          "line": 571,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20772,
      "end": 20782,
      "loc": {
        "start": {
          "line": 573,
          "column": 10
        },
        "end": {
          "line": 573,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20782,
      "end": 20783,
      "loc": {
        "start": {
          "line": 573,
          "column": 20
        },
        "end": {
          "line": 573,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 20783,
      "end": 20793,
      "loc": {
        "start": {
          "line": 573,
          "column": 21
        },
        "end": {
          "line": 573,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20793,
      "end": 20794,
      "loc": {
        "start": {
          "line": 573,
          "column": 31
        },
        "end": {
          "line": 573,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20795,
      "end": 20796,
      "loc": {
        "start": {
          "line": 573,
          "column": 33
        },
        "end": {
          "line": 573,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 20797,
      "end": 20811,
      "loc": {
        "start": {
          "line": 573,
          "column": 35
        },
        "end": {
          "line": 573,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20811,
      "end": 20812,
      "loc": {
        "start": {
          "line": 573,
          "column": 49
        },
        "end": {
          "line": 573,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 20812,
      "end": 20815,
      "loc": {
        "start": {
          "line": 573,
          "column": 50
        },
        "end": {
          "line": 573,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20815,
      "end": 20816,
      "loc": {
        "start": {
          "line": 573,
          "column": 53
        },
        "end": {
          "line": 573,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 20816,
      "end": 20825,
      "loc": {
        "start": {
          "line": 573,
          "column": 54
        },
        "end": {
          "line": 573,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20825,
      "end": 20826,
      "loc": {
        "start": {
          "line": 573,
          "column": 63
        },
        "end": {
          "line": 573,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20826,
      "end": 20827,
      "loc": {
        "start": {
          "line": 573,
          "column": 64
        },
        "end": {
          "line": 573,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20838,
      "end": 20848,
      "loc": {
        "start": {
          "line": 574,
          "column": 10
        },
        "end": {
          "line": 574,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20848,
      "end": 20849,
      "loc": {
        "start": {
          "line": 574,
          "column": 20
        },
        "end": {
          "line": 574,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 20849,
      "end": 20866,
      "loc": {
        "start": {
          "line": 574,
          "column": 21
        },
        "end": {
          "line": 574,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20866,
      "end": 20867,
      "loc": {
        "start": {
          "line": 574,
          "column": 38
        },
        "end": {
          "line": 574,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20868,
      "end": 20869,
      "loc": {
        "start": {
          "line": 574,
          "column": 40
        },
        "end": {
          "line": 574,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 20870,
      "end": 20888,
      "loc": {
        "start": {
          "line": 574,
          "column": 42
        },
        "end": {
          "line": 574,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20888,
      "end": 20889,
      "loc": {
        "start": {
          "line": 574,
          "column": 60
        },
        "end": {
          "line": 574,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 20889,
      "end": 20892,
      "loc": {
        "start": {
          "line": 574,
          "column": 61
        },
        "end": {
          "line": 574,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20892,
      "end": 20893,
      "loc": {
        "start": {
          "line": 574,
          "column": 64
        },
        "end": {
          "line": 574,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 20893,
      "end": 20902,
      "loc": {
        "start": {
          "line": 574,
          "column": 65
        },
        "end": {
          "line": 574,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20902,
      "end": 20903,
      "loc": {
        "start": {
          "line": 574,
          "column": 74
        },
        "end": {
          "line": 574,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20903,
      "end": 20904,
      "loc": {
        "start": {
          "line": 574,
          "column": 75
        },
        "end": {
          "line": 574,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20916,
      "end": 20926,
      "loc": {
        "start": {
          "line": 576,
          "column": 10
        },
        "end": {
          "line": 576,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 20927,
      "end": 20928,
      "loc": {
        "start": {
          "line": 576,
          "column": 21
        },
        "end": {
          "line": 576,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 20929,
      "end": 20930,
      "loc": {
        "start": {
          "line": 576,
          "column": 23
        },
        "end": {
          "line": 576,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20930,
      "end": 20931,
      "loc": {
        "start": {
          "line": 576,
          "column": 24
        },
        "end": {
          "line": 576,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 20931,
      "end": 20939,
      "loc": {
        "start": {
          "line": 576,
          "column": 25
        },
        "end": {
          "line": 576,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 20939,
      "end": 20940,
      "loc": {
        "start": {
          "line": 576,
          "column": 33
        },
        "end": {
          "line": 576,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 20940,
      "end": 20950,
      "loc": {
        "start": {
          "line": 576,
          "column": 34
        },
        "end": {
          "line": 576,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20950,
      "end": 20951,
      "loc": {
        "start": {
          "line": 576,
          "column": 44
        },
        "end": {
          "line": 576,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 20952,
      "end": 20970,
      "loc": {
        "start": {
          "line": 576,
          "column": 46
        },
        "end": {
          "line": 576,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20970,
      "end": 20971,
      "loc": {
        "start": {
          "line": 576,
          "column": 64
        },
        "end": {
          "line": 576,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 20971,
      "end": 20982,
      "loc": {
        "start": {
          "line": 576,
          "column": 65
        },
        "end": {
          "line": 576,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20982,
      "end": 20983,
      "loc": {
        "start": {
          "line": 576,
          "column": 76
        },
        "end": {
          "line": 576,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 20983,
      "end": 20990,
      "loc": {
        "start": {
          "line": 576,
          "column": 77
        },
        "end": {
          "line": 576,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20990,
      "end": 20991,
      "loc": {
        "start": {
          "line": 576,
          "column": 84
        },
        "end": {
          "line": 576,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 20991,
      "end": 20996,
      "loc": {
        "start": {
          "line": 576,
          "column": 85
        },
        "end": {
          "line": 576,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 20996,
      "end": 20997,
      "loc": {
        "start": {
          "line": 576,
          "column": 90
        },
        "end": {
          "line": 576,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 20997,
      "end": 21001,
      "loc": {
        "start": {
          "line": 576,
          "column": 91
        },
        "end": {
          "line": 576,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21001,
      "end": 21002,
      "loc": {
        "start": {
          "line": 576,
          "column": 95
        },
        "end": {
          "line": 576,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21002,
      "end": 21003,
      "loc": {
        "start": {
          "line": 576,
          "column": 96
        },
        "end": {
          "line": 576,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 21004,
      "end": 21021,
      "loc": {
        "start": {
          "line": 576,
          "column": 98
        },
        "end": {
          "line": 576,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21021,
      "end": 21022,
      "loc": {
        "start": {
          "line": 576,
          "column": 115
        },
        "end": {
          "line": 576,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21022,
      "end": 21023,
      "loc": {
        "start": {
          "line": 576,
          "column": 116
        },
        "end": {
          "line": 576,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 21035,
      "end": 21036,
      "loc": {
        "start": {
          "line": 578,
          "column": 10
        },
        "end": {
          "line": 578,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21036,
      "end": 21037,
      "loc": {
        "start": {
          "line": 578,
          "column": 11
        },
        "end": {
          "line": 578,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 21037,
      "end": 21043,
      "loc": {
        "start": {
          "line": 578,
          "column": 12
        },
        "end": {
          "line": 578,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21043,
      "end": 21044,
      "loc": {
        "start": {
          "line": 578,
          "column": 18
        },
        "end": {
          "line": 578,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 21044,
      "end": 21054,
      "loc": {
        "start": {
          "line": 578,
          "column": 19
        },
        "end": {
          "line": 578,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21054,
      "end": 21055,
      "loc": {
        "start": {
          "line": 578,
          "column": 29
        },
        "end": {
          "line": 578,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 21056,
      "end": 21067,
      "loc": {
        "start": {
          "line": 578,
          "column": 31
        },
        "end": {
          "line": 578,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21067,
      "end": 21068,
      "loc": {
        "start": {
          "line": 578,
          "column": 42
        },
        "end": {
          "line": 578,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 21068,
      "end": 21075,
      "loc": {
        "start": {
          "line": 578,
          "column": 43
        },
        "end": {
          "line": 578,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21075,
      "end": 21076,
      "loc": {
        "start": {
          "line": 578,
          "column": 50
        },
        "end": {
          "line": 578,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 21076,
      "end": 21081,
      "loc": {
        "start": {
          "line": 578,
          "column": 51
        },
        "end": {
          "line": 578,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21081,
      "end": 21082,
      "loc": {
        "start": {
          "line": 578,
          "column": 56
        },
        "end": {
          "line": 578,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21082,
      "end": 21083,
      "loc": {
        "start": {
          "line": 578,
          "column": 57
        },
        "end": {
          "line": 578,
          "column": 58
        }
      }
    },
    {
      "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": 21095,
      "end": 21101,
      "loc": {
        "start": {
          "line": 580,
          "column": 10
        },
        "end": {
          "line": 580,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 21102,
      "end": 21112,
      "loc": {
        "start": {
          "line": 580,
          "column": 17
        },
        "end": {
          "line": 580,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21112,
      "end": 21113,
      "loc": {
        "start": {
          "line": 580,
          "column": 27
        },
        "end": {
          "line": 580,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21122,
      "end": 21123,
      "loc": {
        "start": {
          "line": 581,
          "column": 8
        },
        "end": {
          "line": 581,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21123,
      "end": 21124,
      "loc": {
        "start": {
          "line": 581,
          "column": 9
        },
        "end": {
          "line": 581,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21124,
      "end": 21125,
      "loc": {
        "start": {
          "line": 581,
          "column": 10
        },
        "end": {
          "line": 581,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 21135,
      "end": 21143,
      "loc": {
        "start": {
          "line": 583,
          "column": 8
        },
        "end": {
          "line": 583,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21143,
      "end": 21144,
      "loc": {
        "start": {
          "line": 583,
          "column": 16
        },
        "end": {
          "line": 583,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 21144,
      "end": 21148,
      "loc": {
        "start": {
          "line": 583,
          "column": 17
        },
        "end": {
          "line": 583,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21148,
      "end": 21149,
      "loc": {
        "start": {
          "line": 583,
          "column": 21
        },
        "end": {
          "line": 583,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 21149,
      "end": 21160,
      "loc": {
        "start": {
          "line": 583,
          "column": 22
        },
        "end": {
          "line": 583,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21160,
      "end": 21161,
      "loc": {
        "start": {
          "line": 583,
          "column": 33
        },
        "end": {
          "line": 583,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 21161,
      "end": 21168,
      "loc": {
        "start": {
          "line": 583,
          "column": 34
        },
        "end": {
          "line": 583,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21168,
      "end": 21169,
      "loc": {
        "start": {
          "line": 583,
          "column": 41
        },
        "end": {
          "line": 583,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 21169,
      "end": 21174,
      "loc": {
        "start": {
          "line": 583,
          "column": 42
        },
        "end": {
          "line": 583,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21174,
      "end": 21175,
      "loc": {
        "start": {
          "line": 583,
          "column": 47
        },
        "end": {
          "line": 583,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulkCreate",
      "start": 21175,
      "end": 21185,
      "loc": {
        "start": {
          "line": 583,
          "column": 48
        },
        "end": {
          "line": 583,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21185,
      "end": 21186,
      "loc": {
        "start": {
          "line": 583,
          "column": 58
        },
        "end": {
          "line": 583,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulk",
      "start": 21186,
      "end": 21190,
      "loc": {
        "start": {
          "line": 583,
          "column": 59
        },
        "end": {
          "line": 583,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21190,
      "end": 21191,
      "loc": {
        "start": {
          "line": 583,
          "column": 63
        },
        "end": {
          "line": 583,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 21192,
      "end": 21193,
      "loc": {
        "start": {
          "line": 583,
          "column": 65
        },
        "end": {
          "line": 583,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21193,
      "end": 21194,
      "loc": {
        "start": {
          "line": 583,
          "column": 66
        },
        "end": {
          "line": 583,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 21194,
      "end": 21200,
      "loc": {
        "start": {
          "line": 583,
          "column": 67
        },
        "end": {
          "line": 583,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21200,
      "end": 21201,
      "loc": {
        "start": {
          "line": 583,
          "column": 73
        },
        "end": {
          "line": 583,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21201,
      "end": 21202,
      "loc": {
        "start": {
          "line": 583,
          "column": 74
        },
        "end": {
          "line": 583,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "validate",
      "start": 21203,
      "end": 21211,
      "loc": {
        "start": {
          "line": 583,
          "column": 76
        },
        "end": {
          "line": 583,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21211,
      "end": 21212,
      "loc": {
        "start": {
          "line": 583,
          "column": 84
        },
        "end": {
          "line": 583,
          "column": 85
        }
      }
    },
    {
      "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": 21213,
      "end": 21217,
      "loc": {
        "start": {
          "line": 583,
          "column": 86
        },
        "end": {
          "line": 583,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21218,
      "end": 21219,
      "loc": {
        "start": {
          "line": 583,
          "column": 91
        },
        "end": {
          "line": 583,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21219,
      "end": 21220,
      "loc": {
        "start": {
          "line": 583,
          "column": 92
        },
        "end": {
          "line": 583,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 21221,
      "end": 21228,
      "loc": {
        "start": {
          "line": 583,
          "column": 94
        },
        "end": {
          "line": 583,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21228,
      "end": 21229,
      "loc": {
        "start": {
          "line": 583,
          "column": 101
        },
        "end": {
          "line": 583,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21229,
      "end": 21230,
      "loc": {
        "start": {
          "line": 583,
          "column": 102
        },
        "end": {
          "line": 583,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21230,
      "end": 21231,
      "loc": {
        "start": {
          "line": 583,
          "column": 103
        },
        "end": {
          "line": 583,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21231,
      "end": 21232,
      "loc": {
        "start": {
          "line": 583,
          "column": 104
        },
        "end": {
          "line": 583,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21239,
      "end": 21240,
      "loc": {
        "start": {
          "line": 584,
          "column": 6
        },
        "end": {
          "line": 584,
          "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": 21248,
      "end": 21254,
      "loc": {
        "start": {
          "line": 586,
          "column": 6
        },
        "end": {
          "line": 586,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 21255,
      "end": 21260,
      "loc": {
        "start": {
          "line": 586,
          "column": 13
        },
        "end": {
          "line": 586,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21260,
      "end": 21261,
      "loc": {
        "start": {
          "line": 586,
          "column": 18
        },
        "end": {
          "line": 586,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Promise",
      "start": 21261,
      "end": 21268,
      "loc": {
        "start": {
          "line": 586,
          "column": 19
        },
        "end": {
          "line": 586,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21268,
      "end": 21269,
      "loc": {
        "start": {
          "line": 586,
          "column": 26
        },
        "end": {
          "line": 586,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "all",
      "start": 21269,
      "end": 21272,
      "loc": {
        "start": {
          "line": 586,
          "column": 27
        },
        "end": {
          "line": 586,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21272,
      "end": 21273,
      "loc": {
        "start": {
          "line": 586,
          "column": 30
        },
        "end": {
          "line": 586,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 21273,
      "end": 21281,
      "loc": {
        "start": {
          "line": 586,
          "column": 31
        },
        "end": {
          "line": 586,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21281,
      "end": 21282,
      "loc": {
        "start": {
          "line": 586,
          "column": 39
        },
        "end": {
          "line": 586,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21282,
      "end": 21283,
      "loc": {
        "start": {
          "line": 586,
          "column": 40
        },
        "end": {
          "line": 586,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21288,
      "end": 21289,
      "loc": {
        "start": {
          "line": 587,
          "column": 4
        },
        "end": {
          "line": 587,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21289,
      "end": 21290,
      "loc": {
        "start": {
          "line": 587,
          "column": 5
        },
        "end": {
          "line": 587,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21290,
      "end": 21291,
      "loc": {
        "start": {
          "line": 587,
          "column": 6
        },
        "end": {
          "line": 587,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21294,
      "end": 21295,
      "loc": {
        "start": {
          "line": 588,
          "column": 2
        },
        "end": {
          "line": 588,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Associate one ore several rows with `this`.\n   *\n   * @param {Model[]|Model|string[]|string|number[]|Number} [newAssociation(s)] A single instance or primary key, or a mixed array of persisted instances or primary keys\n   * @param {Object} [options] Options passed to `through.findAll`, `bulkCreate` and `update`\n   * @param {Object} [options.validate] Run validation for the join model.\n   * @param {Object} [options.through] Additional attributes for the join table.\n   * @return {Promise}\n   ",
      "start": 21299,
      "end": 21805,
      "loc": {
        "start": {
          "line": 590,
          "column": 2
        },
        "end": {
          "line": 598,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "add",
      "start": 21808,
      "end": 21811,
      "loc": {
        "start": {
          "line": 599,
          "column": 2
        },
        "end": {
          "line": 599,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21811,
      "end": 21812,
      "loc": {
        "start": {
          "line": 599,
          "column": 5
        },
        "end": {
          "line": 599,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 21812,
      "end": 21826,
      "loc": {
        "start": {
          "line": 599,
          "column": 6
        },
        "end": {
          "line": 599,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21826,
      "end": 21827,
      "loc": {
        "start": {
          "line": 599,
          "column": 20
        },
        "end": {
          "line": 599,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 21828,
      "end": 21840,
      "loc": {
        "start": {
          "line": 599,
          "column": 22
        },
        "end": {
          "line": 599,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21840,
      "end": 21841,
      "loc": {
        "start": {
          "line": 599,
          "column": 34
        },
        "end": {
          "line": 599,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 21842,
      "end": 21849,
      "loc": {
        "start": {
          "line": 599,
          "column": 36
        },
        "end": {
          "line": 599,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21849,
      "end": 21850,
      "loc": {
        "start": {
          "line": 599,
          "column": 43
        },
        "end": {
          "line": 599,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21851,
      "end": 21852,
      "loc": {
        "start": {
          "line": 599,
          "column": 45
        },
        "end": {
          "line": 599,
          "column": 46
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " If newInstances is null or undefined, no-op",
      "start": 21857,
      "end": 21903,
      "loc": {
        "start": {
          "line": 600,
          "column": 4
        },
        "end": {
          "line": 600,
          "column": 50
        }
      }
    },
    {
      "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": 21908,
      "end": 21910,
      "loc": {
        "start": {
          "line": 601,
          "column": 4
        },
        "end": {
          "line": 601,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21911,
      "end": 21912,
      "loc": {
        "start": {
          "line": 601,
          "column": 7
        },
        "end": {
          "line": 601,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 21912,
      "end": 21913,
      "loc": {
        "start": {
          "line": 601,
          "column": 8
        },
        "end": {
          "line": 601,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 21913,
      "end": 21925,
      "loc": {
        "start": {
          "line": 601,
          "column": 9
        },
        "end": {
          "line": 601,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21925,
      "end": 21926,
      "loc": {
        "start": {
          "line": 601,
          "column": 21
        },
        "end": {
          "line": 601,
          "column": 22
        }
      }
    },
    {
      "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": 21927,
      "end": 21933,
      "loc": {
        "start": {
          "line": 601,
          "column": 23
        },
        "end": {
          "line": 601,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 21934,
      "end": 21939,
      "loc": {
        "start": {
          "line": 601,
          "column": 30
        },
        "end": {
          "line": 601,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21939,
      "end": 21940,
      "loc": {
        "start": {
          "line": 601,
          "column": 35
        },
        "end": {
          "line": 601,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Promise",
      "start": 21940,
      "end": 21947,
      "loc": {
        "start": {
          "line": 601,
          "column": 36
        },
        "end": {
          "line": 601,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21947,
      "end": 21948,
      "loc": {
        "start": {
          "line": 601,
          "column": 43
        },
        "end": {
          "line": 601,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "resolve",
      "start": 21948,
      "end": 21955,
      "loc": {
        "start": {
          "line": 601,
          "column": 44
        },
        "end": {
          "line": 601,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21955,
      "end": 21956,
      "loc": {
        "start": {
          "line": 601,
          "column": 51
        },
        "end": {
          "line": 601,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21956,
      "end": 21957,
      "loc": {
        "start": {
          "line": 601,
          "column": 52
        },
        "end": {
          "line": 601,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21957,
      "end": 21958,
      "loc": {
        "start": {
          "line": 601,
          "column": 53
        },
        "end": {
          "line": 601,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 21964,
      "end": 21971,
      "loc": {
        "start": {
          "line": 603,
          "column": 4
        },
        "end": {
          "line": 603,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 21972,
      "end": 21973,
      "loc": {
        "start": {
          "line": 603,
          "column": 12
        },
        "end": {
          "line": 603,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 21974,
      "end": 21975,
      "loc": {
        "start": {
          "line": 603,
          "column": 14
        },
        "end": {
          "line": 603,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21975,
      "end": 21976,
      "loc": {
        "start": {
          "line": 603,
          "column": 15
        },
        "end": {
          "line": 603,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "clone",
      "start": 21976,
      "end": 21981,
      "loc": {
        "start": {
          "line": 603,
          "column": 16
        },
        "end": {
          "line": 603,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21981,
      "end": 21982,
      "loc": {
        "start": {
          "line": 603,
          "column": 21
        },
        "end": {
          "line": 603,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 21982,
      "end": 21989,
      "loc": {
        "start": {
          "line": 603,
          "column": 22
        },
        "end": {
          "line": 603,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21989,
      "end": 21990,
      "loc": {
        "start": {
          "line": 603,
          "column": 29
        },
        "end": {
          "line": 603,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 21991,
      "end": 21993,
      "loc": {
        "start": {
          "line": 603,
          "column": 31
        },
        "end": {
          "line": 603,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21994,
      "end": 21995,
      "loc": {
        "start": {
          "line": 603,
          "column": 34
        },
        "end": {
          "line": 603,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 21995,
      "end": 21996,
      "loc": {
        "start": {
          "line": 603,
          "column": 35
        },
        "end": {
          "line": 603,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 21996,
      "end": 21997,
      "loc": {
        "start": {
          "line": 603,
          "column": 36
        },
        "end": {
          "line": 603,
          "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": 22003,
      "end": 22008,
      "loc": {
        "start": {
          "line": 605,
          "column": 4
        },
        "end": {
          "line": 605,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22009,
      "end": 22020,
      "loc": {
        "start": {
          "line": 605,
          "column": 10
        },
        "end": {
          "line": 605,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22021,
      "end": 22022,
      "loc": {
        "start": {
          "line": 605,
          "column": 22
        },
        "end": {
          "line": 605,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 22023,
      "end": 22027,
      "loc": {
        "start": {
          "line": 605,
          "column": 24
        },
        "end": {
          "line": 605,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22027,
      "end": 22028,
      "loc": {
        "start": {
          "line": 605,
          "column": 28
        },
        "end": {
          "line": 605,
          "column": 29
        }
      }
    },
    {
      "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": 22033,
      "end": 22038,
      "loc": {
        "start": {
          "line": 606,
          "column": 4
        },
        "end": {
          "line": 606,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 22039,
      "end": 22048,
      "loc": {
        "start": {
          "line": 606,
          "column": 10
        },
        "end": {
          "line": 606,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22049,
      "end": 22050,
      "loc": {
        "start": {
          "line": 606,
          "column": 20
        },
        "end": {
          "line": 606,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22051,
      "end": 22062,
      "loc": {
        "start": {
          "line": 606,
          "column": 22
        },
        "end": {
          "line": 606,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22062,
      "end": 22063,
      "loc": {
        "start": {
          "line": 606,
          "column": 33
        },
        "end": {
          "line": 606,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 22063,
      "end": 22069,
      "loc": {
        "start": {
          "line": 606,
          "column": 34
        },
        "end": {
          "line": 606,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22069,
      "end": 22070,
      "loc": {
        "start": {
          "line": 606,
          "column": 40
        },
        "end": {
          "line": 606,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 22070,
      "end": 22089,
      "loc": {
        "start": {
          "line": 606,
          "column": 41
        },
        "end": {
          "line": 606,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22089,
      "end": 22090,
      "loc": {
        "start": {
          "line": 606,
          "column": 60
        },
        "end": {
          "line": 606,
          "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": 22095,
      "end": 22100,
      "loc": {
        "start": {
          "line": 607,
          "column": 4
        },
        "end": {
          "line": 607,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 22101,
      "end": 22110,
      "loc": {
        "start": {
          "line": 607,
          "column": 10
        },
        "end": {
          "line": 607,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22111,
      "end": 22112,
      "loc": {
        "start": {
          "line": 607,
          "column": 20
        },
        "end": {
          "line": 607,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22113,
      "end": 22124,
      "loc": {
        "start": {
          "line": 607,
          "column": 22
        },
        "end": {
          "line": 607,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22124,
      "end": 22125,
      "loc": {
        "start": {
          "line": 607,
          "column": 33
        },
        "end": {
          "line": 607,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 22125,
      "end": 22131,
      "loc": {
        "start": {
          "line": 607,
          "column": 34
        },
        "end": {
          "line": 607,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22131,
      "end": 22132,
      "loc": {
        "start": {
          "line": 607,
          "column": 40
        },
        "end": {
          "line": 607,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 22132,
      "end": 22151,
      "loc": {
        "start": {
          "line": 607,
          "column": 41
        },
        "end": {
          "line": 607,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22151,
      "end": 22152,
      "loc": {
        "start": {
          "line": 607,
          "column": 60
        },
        "end": {
          "line": 607,
          "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": 22157,
      "end": 22162,
      "loc": {
        "start": {
          "line": 608,
          "column": 4
        },
        "end": {
          "line": 608,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 22163,
      "end": 22173,
      "loc": {
        "start": {
          "line": 608,
          "column": 10
        },
        "end": {
          "line": 608,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22174,
      "end": 22175,
      "loc": {
        "start": {
          "line": 608,
          "column": 21
        },
        "end": {
          "line": 608,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22176,
      "end": 22187,
      "loc": {
        "start": {
          "line": 608,
          "column": 23
        },
        "end": {
          "line": 608,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22187,
      "end": 22188,
      "loc": {
        "start": {
          "line": 608,
          "column": 34
        },
        "end": {
          "line": 608,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 22188,
      "end": 22198,
      "loc": {
        "start": {
          "line": 608,
          "column": 35
        },
        "end": {
          "line": 608,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22198,
      "end": 22199,
      "loc": {
        "start": {
          "line": 608,
          "column": 45
        },
        "end": {
          "line": 608,
          "column": 46
        }
      }
    },
    {
      "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": 22204,
      "end": 22209,
      "loc": {
        "start": {
          "line": 609,
          "column": 4
        },
        "end": {
          "line": 609,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 22210,
      "end": 22227,
      "loc": {
        "start": {
          "line": 609,
          "column": 10
        },
        "end": {
          "line": 609,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22228,
      "end": 22229,
      "loc": {
        "start": {
          "line": 609,
          "column": 28
        },
        "end": {
          "line": 609,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22230,
      "end": 22241,
      "loc": {
        "start": {
          "line": 609,
          "column": 30
        },
        "end": {
          "line": 609,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22241,
      "end": 22242,
      "loc": {
        "start": {
          "line": 609,
          "column": 41
        },
        "end": {
          "line": 609,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 22242,
      "end": 22259,
      "loc": {
        "start": {
          "line": 609,
          "column": 42
        },
        "end": {
          "line": 609,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22259,
      "end": 22260,
      "loc": {
        "start": {
          "line": 609,
          "column": 59
        },
        "end": {
          "line": 609,
          "column": 60
        }
      }
    },
    {
      "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": 22265,
      "end": 22270,
      "loc": {
        "start": {
          "line": 610,
          "column": 4
        },
        "end": {
          "line": 610,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 22271,
      "end": 22288,
      "loc": {
        "start": {
          "line": 610,
          "column": 10
        },
        "end": {
          "line": 610,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22289,
      "end": 22290,
      "loc": {
        "start": {
          "line": 610,
          "column": 28
        },
        "end": {
          "line": 610,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 22291,
      "end": 22292,
      "loc": {
        "start": {
          "line": 610,
          "column": 30
        },
        "end": {
          "line": 610,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22292,
      "end": 22293,
      "loc": {
        "start": {
          "line": 610,
          "column": 31
        },
        "end": {
          "line": 610,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "omit",
      "start": 22293,
      "end": 22297,
      "loc": {
        "start": {
          "line": 610,
          "column": 32
        },
        "end": {
          "line": 610,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22297,
      "end": 22298,
      "loc": {
        "start": {
          "line": 610,
          "column": 36
        },
        "end": {
          "line": 610,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 22298,
      "end": 22305,
      "loc": {
        "start": {
          "line": 610,
          "column": 37
        },
        "end": {
          "line": 610,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22305,
      "end": 22306,
      "loc": {
        "start": {
          "line": 610,
          "column": 44
        },
        "end": {
          "line": 610,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 22306,
      "end": 22313,
      "loc": {
        "start": {
          "line": 610,
          "column": 45
        },
        "end": {
          "line": 610,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 22314,
      "end": 22316,
      "loc": {
        "start": {
          "line": 610,
          "column": 53
        },
        "end": {
          "line": 610,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22317,
      "end": 22318,
      "loc": {
        "start": {
          "line": 610,
          "column": 56
        },
        "end": {
          "line": 610,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22318,
      "end": 22319,
      "loc": {
        "start": {
          "line": 610,
          "column": 57
        },
        "end": {
          "line": 610,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22319,
      "end": 22320,
      "loc": {
        "start": {
          "line": 610,
          "column": 58
        },
        "end": {
          "line": 610,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22321,
      "end": 22322,
      "loc": {
        "start": {
          "line": 610,
          "column": 60
        },
        "end": {
          "line": 610,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "transaction",
      "start": 22322,
      "end": 22335,
      "loc": {
        "start": {
          "line": 610,
          "column": 61
        },
        "end": {
          "line": 610,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22335,
      "end": 22336,
      "loc": {
        "start": {
          "line": 610,
          "column": 74
        },
        "end": {
          "line": 610,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "hooks",
      "start": 22337,
      "end": 22344,
      "loc": {
        "start": {
          "line": 610,
          "column": 76
        },
        "end": {
          "line": 610,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22344,
      "end": 22345,
      "loc": {
        "start": {
          "line": 610,
          "column": 83
        },
        "end": {
          "line": 610,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "individualHooks",
      "start": 22346,
      "end": 22363,
      "loc": {
        "start": {
          "line": 610,
          "column": 85
        },
        "end": {
          "line": 610,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22363,
      "end": 22364,
      "loc": {
        "start": {
          "line": 610,
          "column": 102
        },
        "end": {
          "line": 610,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "ignoreDuplicates",
      "start": 22365,
      "end": 22383,
      "loc": {
        "start": {
          "line": 610,
          "column": 104
        },
        "end": {
          "line": 610,
          "column": 122
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22383,
      "end": 22384,
      "loc": {
        "start": {
          "line": 610,
          "column": 122
        },
        "end": {
          "line": 610,
          "column": 123
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "validate",
      "start": 22385,
      "end": 22395,
      "loc": {
        "start": {
          "line": 610,
          "column": 124
        },
        "end": {
          "line": 610,
          "column": 134
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22395,
      "end": 22396,
      "loc": {
        "start": {
          "line": 610,
          "column": 134
        },
        "end": {
          "line": 610,
          "column": 135
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "fields",
      "start": 22397,
      "end": 22405,
      "loc": {
        "start": {
          "line": 610,
          "column": 136
        },
        "end": {
          "line": 610,
          "column": 144
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22405,
      "end": 22406,
      "loc": {
        "start": {
          "line": 610,
          "column": 144
        },
        "end": {
          "line": 610,
          "column": 145
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "logging",
      "start": 22407,
      "end": 22416,
      "loc": {
        "start": {
          "line": 610,
          "column": 146
        },
        "end": {
          "line": 610,
          "column": 155
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22416,
      "end": 22417,
      "loc": {
        "start": {
          "line": 610,
          "column": 155
        },
        "end": {
          "line": 610,
          "column": 156
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22417,
      "end": 22418,
      "loc": {
        "start": {
          "line": 610,
          "column": 156
        },
        "end": {
          "line": 610,
          "column": 157
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22418,
      "end": 22419,
      "loc": {
        "start": {
          "line": 610,
          "column": 157
        },
        "end": {
          "line": 610,
          "column": 158
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 22425,
      "end": 22437,
      "loc": {
        "start": {
          "line": 612,
          "column": 4
        },
        "end": {
          "line": 612,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22438,
      "end": 22439,
      "loc": {
        "start": {
          "line": 612,
          "column": 17
        },
        "end": {
          "line": 612,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22440,
      "end": 22451,
      "loc": {
        "start": {
          "line": 612,
          "column": 19
        },
        "end": {
          "line": 612,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22451,
      "end": 22452,
      "loc": {
        "start": {
          "line": 612,
          "column": 30
        },
        "end": {
          "line": 612,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toInstanceArray",
      "start": 22452,
      "end": 22467,
      "loc": {
        "start": {
          "line": 612,
          "column": 31
        },
        "end": {
          "line": 612,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22467,
      "end": 22468,
      "loc": {
        "start": {
          "line": 612,
          "column": 46
        },
        "end": {
          "line": 612,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 22468,
      "end": 22480,
      "loc": {
        "start": {
          "line": 612,
          "column": 47
        },
        "end": {
          "line": 612,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22480,
      "end": 22481,
      "loc": {
        "start": {
          "line": 612,
          "column": 59
        },
        "end": {
          "line": 612,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22481,
      "end": 22482,
      "loc": {
        "start": {
          "line": 612,
          "column": 60
        },
        "end": {
          "line": 612,
          "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": 22488,
      "end": 22493,
      "loc": {
        "start": {
          "line": 614,
          "column": 4
        },
        "end": {
          "line": 614,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 22494,
      "end": 22499,
      "loc": {
        "start": {
          "line": 614,
          "column": 10
        },
        "end": {
          "line": 614,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22500,
      "end": 22501,
      "loc": {
        "start": {
          "line": 614,
          "column": 16
        },
        "end": {
          "line": 614,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22502,
      "end": 22503,
      "loc": {
        "start": {
          "line": 614,
          "column": 18
        },
        "end": {
          "line": 614,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22503,
      "end": 22504,
      "loc": {
        "start": {
          "line": 614,
          "column": 19
        },
        "end": {
          "line": 614,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22504,
      "end": 22505,
      "loc": {
        "start": {
          "line": 614,
          "column": 20
        },
        "end": {
          "line": 614,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 22510,
      "end": 22515,
      "loc": {
        "start": {
          "line": 615,
          "column": 4
        },
        "end": {
          "line": 615,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22515,
      "end": 22516,
      "loc": {
        "start": {
          "line": 615,
          "column": 9
        },
        "end": {
          "line": 615,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 22516,
      "end": 22526,
      "loc": {
        "start": {
          "line": 615,
          "column": 10
        },
        "end": {
          "line": 615,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22526,
      "end": 22527,
      "loc": {
        "start": {
          "line": 615,
          "column": 20
        },
        "end": {
          "line": 615,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22528,
      "end": 22529,
      "loc": {
        "start": {
          "line": 615,
          "column": 22
        },
        "end": {
          "line": 615,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 22530,
      "end": 22544,
      "loc": {
        "start": {
          "line": 615,
          "column": 24
        },
        "end": {
          "line": 615,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22544,
      "end": 22545,
      "loc": {
        "start": {
          "line": 615,
          "column": 38
        },
        "end": {
          "line": 615,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 22545,
      "end": 22548,
      "loc": {
        "start": {
          "line": 615,
          "column": 39
        },
        "end": {
          "line": 615,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22548,
      "end": 22549,
      "loc": {
        "start": {
          "line": 615,
          "column": 42
        },
        "end": {
          "line": 615,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 22549,
      "end": 22558,
      "loc": {
        "start": {
          "line": 615,
          "column": 43
        },
        "end": {
          "line": 615,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22558,
      "end": 22559,
      "loc": {
        "start": {
          "line": 615,
          "column": 52
        },
        "end": {
          "line": 615,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22559,
      "end": 22560,
      "loc": {
        "start": {
          "line": 615,
          "column": 53
        },
        "end": {
          "line": 615,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 22565,
      "end": 22570,
      "loc": {
        "start": {
          "line": 616,
          "column": 4
        },
        "end": {
          "line": 616,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22570,
      "end": 22571,
      "loc": {
        "start": {
          "line": 616,
          "column": 9
        },
        "end": {
          "line": 616,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 22571,
      "end": 22588,
      "loc": {
        "start": {
          "line": 616,
          "column": 10
        },
        "end": {
          "line": 616,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22588,
      "end": 22589,
      "loc": {
        "start": {
          "line": 616,
          "column": 27
        },
        "end": {
          "line": 616,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22590,
      "end": 22591,
      "loc": {
        "start": {
          "line": 616,
          "column": 29
        },
        "end": {
          "line": 616,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 22592,
      "end": 22604,
      "loc": {
        "start": {
          "line": 616,
          "column": 31
        },
        "end": {
          "line": 616,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22604,
      "end": 22605,
      "loc": {
        "start": {
          "line": 616,
          "column": 43
        },
        "end": {
          "line": 616,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 22605,
      "end": 22608,
      "loc": {
        "start": {
          "line": 616,
          "column": 44
        },
        "end": {
          "line": 616,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22608,
      "end": 22609,
      "loc": {
        "start": {
          "line": 616,
          "column": 47
        },
        "end": {
          "line": 616,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstance",
      "start": 22609,
      "end": 22620,
      "loc": {
        "start": {
          "line": 616,
          "column": 48
        },
        "end": {
          "line": 616,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22621,
      "end": 22623,
      "loc": {
        "start": {
          "line": 616,
          "column": 60
        },
        "end": {
          "line": 616,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstance",
      "start": 22624,
      "end": 22635,
      "loc": {
        "start": {
          "line": 616,
          "column": 63
        },
        "end": {
          "line": 616,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22635,
      "end": 22636,
      "loc": {
        "start": {
          "line": 616,
          "column": 74
        },
        "end": {
          "line": 616,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 22636,
      "end": 22639,
      "loc": {
        "start": {
          "line": 616,
          "column": 75
        },
        "end": {
          "line": 616,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22639,
      "end": 22640,
      "loc": {
        "start": {
          "line": 616,
          "column": 78
        },
        "end": {
          "line": 616,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 22640,
      "end": 22649,
      "loc": {
        "start": {
          "line": 616,
          "column": 79
        },
        "end": {
          "line": 616,
          "column": 88
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22649,
      "end": 22650,
      "loc": {
        "start": {
          "line": 616,
          "column": 88
        },
        "end": {
          "line": 616,
          "column": 89
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22650,
      "end": 22651,
      "loc": {
        "start": {
          "line": 616,
          "column": 89
        },
        "end": {
          "line": 616,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22651,
      "end": 22652,
      "loc": {
        "start": {
          "line": 616,
          "column": 90
        },
        "end": {
          "line": 616,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 22658,
      "end": 22659,
      "loc": {
        "start": {
          "line": 618,
          "column": 4
        },
        "end": {
          "line": 618,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22659,
      "end": 22660,
      "loc": {
        "start": {
          "line": 618,
          "column": 5
        },
        "end": {
          "line": 618,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 22660,
      "end": 22666,
      "loc": {
        "start": {
          "line": 618,
          "column": 6
        },
        "end": {
          "line": 618,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22666,
      "end": 22667,
      "loc": {
        "start": {
          "line": 618,
          "column": 12
        },
        "end": {
          "line": 618,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 22667,
      "end": 22672,
      "loc": {
        "start": {
          "line": 618,
          "column": 13
        },
        "end": {
          "line": 618,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22672,
      "end": 22673,
      "loc": {
        "start": {
          "line": 618,
          "column": 18
        },
        "end": {
          "line": 618,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22674,
      "end": 22685,
      "loc": {
        "start": {
          "line": 618,
          "column": 20
        },
        "end": {
          "line": 618,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22685,
      "end": 22686,
      "loc": {
        "start": {
          "line": 618,
          "column": 31
        },
        "end": {
          "line": 618,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 22686,
      "end": 22693,
      "loc": {
        "start": {
          "line": 618,
          "column": 32
        },
        "end": {
          "line": 618,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22693,
      "end": 22694,
      "loc": {
        "start": {
          "line": 618,
          "column": 39
        },
        "end": {
          "line": 618,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 22694,
      "end": 22699,
      "loc": {
        "start": {
          "line": 618,
          "column": 40
        },
        "end": {
          "line": 618,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22699,
      "end": 22700,
      "loc": {
        "start": {
          "line": 618,
          "column": 45
        },
        "end": {
          "line": 618,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22700,
      "end": 22701,
      "loc": {
        "start": {
          "line": 618,
          "column": 46
        },
        "end": {
          "line": 618,
          "column": 47
        }
      }
    },
    {
      "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": 22707,
      "end": 22713,
      "loc": {
        "start": {
          "line": 620,
          "column": 4
        },
        "end": {
          "line": 620,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 22714,
      "end": 22725,
      "loc": {
        "start": {
          "line": 620,
          "column": 11
        },
        "end": {
          "line": 620,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22725,
      "end": 22726,
      "loc": {
        "start": {
          "line": 620,
          "column": 22
        },
        "end": {
          "line": 620,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 22726,
      "end": 22733,
      "loc": {
        "start": {
          "line": 620,
          "column": 23
        },
        "end": {
          "line": 620,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22733,
      "end": 22734,
      "loc": {
        "start": {
          "line": 620,
          "column": 30
        },
        "end": {
          "line": 620,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 22734,
      "end": 22739,
      "loc": {
        "start": {
          "line": 620,
          "column": 31
        },
        "end": {
          "line": 620,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22739,
      "end": 22740,
      "loc": {
        "start": {
          "line": 620,
          "column": 36
        },
        "end": {
          "line": 620,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "findAll",
      "start": 22740,
      "end": 22747,
      "loc": {
        "start": {
          "line": 620,
          "column": 37
        },
        "end": {
          "line": 620,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22747,
      "end": 22748,
      "loc": {
        "start": {
          "line": 620,
          "column": 44
        },
        "end": {
          "line": 620,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 22748,
      "end": 22749,
      "loc": {
        "start": {
          "line": 620,
          "column": 45
        },
        "end": {
          "line": 620,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22749,
      "end": 22750,
      "loc": {
        "start": {
          "line": 620,
          "column": 46
        },
        "end": {
          "line": 620,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 22750,
      "end": 22758,
      "loc": {
        "start": {
          "line": 620,
          "column": 47
        },
        "end": {
          "line": 620,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22758,
      "end": 22759,
      "loc": {
        "start": {
          "line": 620,
          "column": 55
        },
        "end": {
          "line": 620,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22759,
      "end": 22760,
      "loc": {
        "start": {
          "line": 620,
          "column": 56
        },
        "end": {
          "line": 620,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 22760,
      "end": 22765,
      "loc": {
        "start": {
          "line": 620,
          "column": 57
        },
        "end": {
          "line": 620,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22765,
      "end": 22766,
      "loc": {
        "start": {
          "line": 620,
          "column": 62
        },
        "end": {
          "line": 620,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "raw",
      "start": 22767,
      "end": 22770,
      "loc": {
        "start": {
          "line": 620,
          "column": 64
        },
        "end": {
          "line": 620,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22770,
      "end": 22771,
      "loc": {
        "start": {
          "line": 620,
          "column": 67
        },
        "end": {
          "line": 620,
          "column": 68
        }
      }
    },
    {
      "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": 22772,
      "end": 22776,
      "loc": {
        "start": {
          "line": 620,
          "column": 69
        },
        "end": {
          "line": 620,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22776,
      "end": 22777,
      "loc": {
        "start": {
          "line": 620,
          "column": 73
        },
        "end": {
          "line": 620,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22777,
      "end": 22778,
      "loc": {
        "start": {
          "line": 620,
          "column": 74
        },
        "end": {
          "line": 620,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 22779,
      "end": 22786,
      "loc": {
        "start": {
          "line": 620,
          "column": 76
        },
        "end": {
          "line": 620,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22786,
      "end": 22787,
      "loc": {
        "start": {
          "line": 620,
          "column": 83
        },
        "end": {
          "line": 620,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22787,
      "end": 22788,
      "loc": {
        "start": {
          "line": 620,
          "column": 84
        },
        "end": {
          "line": 620,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22788,
      "end": 22789,
      "loc": {
        "start": {
          "line": 620,
          "column": 85
        },
        "end": {
          "line": 620,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "then",
      "start": 22789,
      "end": 22793,
      "loc": {
        "start": {
          "line": 620,
          "column": 86
        },
        "end": {
          "line": 620,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22793,
      "end": 22794,
      "loc": {
        "start": {
          "line": 620,
          "column": 90
        },
        "end": {
          "line": 620,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRows",
      "start": 22794,
      "end": 22805,
      "loc": {
        "start": {
          "line": 620,
          "column": 91
        },
        "end": {
          "line": 620,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22806,
      "end": 22808,
      "loc": {
        "start": {
          "line": 620,
          "column": 103
        },
        "end": {
          "line": 620,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22809,
      "end": 22810,
      "loc": {
        "start": {
          "line": 620,
          "column": 106
        },
        "end": {
          "line": 620,
          "column": 107
        }
      }
    },
    {
      "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": 22817,
      "end": 22822,
      "loc": {
        "start": {
          "line": 621,
          "column": 6
        },
        "end": {
          "line": 621,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 22823,
      "end": 22831,
      "loc": {
        "start": {
          "line": 621,
          "column": 12
        },
        "end": {
          "line": 621,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22832,
      "end": 22833,
      "loc": {
        "start": {
          "line": 621,
          "column": 21
        },
        "end": {
          "line": 621,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22834,
      "end": 22835,
      "loc": {
        "start": {
          "line": 621,
          "column": 23
        },
        "end": {
          "line": 621,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22835,
      "end": 22836,
      "loc": {
        "start": {
          "line": 621,
          "column": 24
        },
        "end": {
          "line": 621,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22836,
      "end": 22837,
      "loc": {
        "start": {
          "line": 621,
          "column": 25
        },
        "end": {
          "line": 621,
          "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": 22844,
      "end": 22849,
      "loc": {
        "start": {
          "line": 622,
          "column": 6
        },
        "end": {
          "line": 622,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 22850,
      "end": 22869,
      "loc": {
        "start": {
          "line": 622,
          "column": 12
        },
        "end": {
          "line": 622,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22870,
      "end": 22871,
      "loc": {
        "start": {
          "line": 622,
          "column": 32
        },
        "end": {
          "line": 622,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22872,
      "end": 22873,
      "loc": {
        "start": {
          "line": 622,
          "column": 34
        },
        "end": {
          "line": 622,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22873,
      "end": 22874,
      "loc": {
        "start": {
          "line": 622,
          "column": 35
        },
        "end": {
          "line": 622,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22874,
      "end": 22875,
      "loc": {
        "start": {
          "line": 622,
          "column": 36
        },
        "end": {
          "line": 622,
          "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": 22882,
      "end": 22887,
      "loc": {
        "start": {
          "line": 623,
          "column": 6
        },
        "end": {
          "line": 623,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "changedAssociations",
      "start": 22888,
      "end": 22907,
      "loc": {
        "start": {
          "line": 623,
          "column": 12
        },
        "end": {
          "line": 623,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22908,
      "end": 22909,
      "loc": {
        "start": {
          "line": 623,
          "column": 32
        },
        "end": {
          "line": 623,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22910,
      "end": 22911,
      "loc": {
        "start": {
          "line": 623,
          "column": 34
        },
        "end": {
          "line": 623,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22911,
      "end": 22912,
      "loc": {
        "start": {
          "line": 623,
          "column": 35
        },
        "end": {
          "line": 623,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22912,
      "end": 22913,
      "loc": {
        "start": {
          "line": 623,
          "column": 36
        },
        "end": {
          "line": 623,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 22920,
      "end": 22923,
      "loc": {
        "start": {
          "line": 624,
          "column": 6
        },
        "end": {
          "line": 624,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22924,
      "end": 22925,
      "loc": {
        "start": {
          "line": 624,
          "column": 10
        },
        "end": {
          "line": 624,
          "column": 11
        }
      }
    },
    {
      "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": 22925,
      "end": 22930,
      "loc": {
        "start": {
          "line": 624,
          "column": 11
        },
        "end": {
          "line": 624,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 22931,
      "end": 22934,
      "loc": {
        "start": {
          "line": 624,
          "column": 17
        },
        "end": {
          "line": 624,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "of",
      "start": 22935,
      "end": 22937,
      "loc": {
        "start": {
          "line": 624,
          "column": 21
        },
        "end": {
          "line": 624,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstances",
      "start": 22938,
      "end": 22950,
      "loc": {
        "start": {
          "line": 624,
          "column": 24
        },
        "end": {
          "line": 624,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22950,
      "end": 22951,
      "loc": {
        "start": {
          "line": 624,
          "column": 36
        },
        "end": {
          "line": 624,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22952,
      "end": 22953,
      "loc": {
        "start": {
          "line": 624,
          "column": 38
        },
        "end": {
          "line": 624,
          "column": 39
        }
      }
    },
    {
      "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": 22962,
      "end": 22967,
      "loc": {
        "start": {
          "line": 625,
          "column": 8
        },
        "end": {
          "line": 625,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "existingAssociation",
      "start": 22968,
      "end": 22987,
      "loc": {
        "start": {
          "line": 625,
          "column": 14
        },
        "end": {
          "line": 625,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 22988,
      "end": 22989,
      "loc": {
        "start": {
          "line": 625,
          "column": 34
        },
        "end": {
          "line": 625,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 22990,
      "end": 22991,
      "loc": {
        "start": {
          "line": 625,
          "column": 36
        },
        "end": {
          "line": 625,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 22991,
      "end": 22992,
      "loc": {
        "start": {
          "line": 625,
          "column": 37
        },
        "end": {
          "line": 625,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "find",
      "start": 22992,
      "end": 22996,
      "loc": {
        "start": {
          "line": 625,
          "column": 38
        },
        "end": {
          "line": 625,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 22996,
      "end": 22997,
      "loc": {
        "start": {
          "line": 625,
          "column": 42
        },
        "end": {
          "line": 625,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "currentRows",
      "start": 22997,
      "end": 23008,
      "loc": {
        "start": {
          "line": 625,
          "column": 43
        },
        "end": {
          "line": 625,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23008,
      "end": 23009,
      "loc": {
        "start": {
          "line": 625,
          "column": 54
        },
        "end": {
          "line": 625,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "current",
      "start": 23010,
      "end": 23017,
      "loc": {
        "start": {
          "line": 625,
          "column": 56
        },
        "end": {
          "line": 625,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23018,
      "end": 23020,
      "loc": {
        "start": {
          "line": 625,
          "column": 64
        },
        "end": {
          "line": 625,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "current",
      "start": 23021,
      "end": 23028,
      "loc": {
        "start": {
          "line": 625,
          "column": 67
        },
        "end": {
          "line": 625,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23028,
      "end": 23029,
      "loc": {
        "start": {
          "line": 625,
          "column": 74
        },
        "end": {
          "line": 625,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 23029,
      "end": 23046,
      "loc": {
        "start": {
          "line": 625,
          "column": 75
        },
        "end": {
          "line": 625,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23046,
      "end": 23047,
      "loc": {
        "start": {
          "line": 625,
          "column": 92
        },
        "end": {
          "line": 625,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "===",
      "start": 23048,
      "end": 23051,
      "loc": {
        "start": {
          "line": 625,
          "column": 94
        },
        "end": {
          "line": 625,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 23052,
      "end": 23055,
      "loc": {
        "start": {
          "line": 625,
          "column": 98
        },
        "end": {
          "line": 625,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23055,
      "end": 23056,
      "loc": {
        "start": {
          "line": 625,
          "column": 101
        },
        "end": {
          "line": 625,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 23056,
      "end": 23059,
      "loc": {
        "start": {
          "line": 625,
          "column": 102
        },
        "end": {
          "line": 625,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23059,
      "end": 23060,
      "loc": {
        "start": {
          "line": 625,
          "column": 105
        },
        "end": {
          "line": 625,
          "column": 106
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 23060,
      "end": 23069,
      "loc": {
        "start": {
          "line": 625,
          "column": 106
        },
        "end": {
          "line": 625,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23069,
      "end": 23070,
      "loc": {
        "start": {
          "line": 625,
          "column": 115
        },
        "end": {
          "line": 625,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23070,
      "end": 23071,
      "loc": {
        "start": {
          "line": 625,
          "column": 116
        },
        "end": {
          "line": 625,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23071,
      "end": 23072,
      "loc": {
        "start": {
          "line": 625,
          "column": 117
        },
        "end": {
          "line": 625,
          "column": 118
        }
      }
    },
    {
      "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": 23082,
      "end": 23084,
      "loc": {
        "start": {
          "line": 627,
          "column": 8
        },
        "end": {
          "line": 627,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23085,
      "end": 23086,
      "loc": {
        "start": {
          "line": 627,
          "column": 11
        },
        "end": {
          "line": 627,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "prefix",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": true,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "!",
      "start": 23086,
      "end": 23087,
      "loc": {
        "start": {
          "line": 627,
          "column": 12
        },
        "end": {
          "line": 627,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "existingAssociation",
      "start": 23087,
      "end": 23106,
      "loc": {
        "start": {
          "line": 627,
          "column": 13
        },
        "end": {
          "line": 627,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23106,
      "end": 23107,
      "loc": {
        "start": {
          "line": 627,
          "column": 32
        },
        "end": {
          "line": 627,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23108,
      "end": 23109,
      "loc": {
        "start": {
          "line": 627,
          "column": 34
        },
        "end": {
          "line": 627,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 23120,
      "end": 23139,
      "loc": {
        "start": {
          "line": 628,
          "column": 10
        },
        "end": {
          "line": 628,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23139,
      "end": 23140,
      "loc": {
        "start": {
          "line": 628,
          "column": 29
        },
        "end": {
          "line": 628,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 23140,
      "end": 23144,
      "loc": {
        "start": {
          "line": 628,
          "column": 30
        },
        "end": {
          "line": 628,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23144,
      "end": 23145,
      "loc": {
        "start": {
          "line": 628,
          "column": 34
        },
        "end": {
          "line": 628,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 23145,
      "end": 23148,
      "loc": {
        "start": {
          "line": 628,
          "column": 35
        },
        "end": {
          "line": 628,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23148,
      "end": 23149,
      "loc": {
        "start": {
          "line": 628,
          "column": 38
        },
        "end": {
          "line": 628,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23149,
      "end": 23150,
      "loc": {
        "start": {
          "line": 628,
          "column": 39
        },
        "end": {
          "line": 628,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23159,
      "end": 23160,
      "loc": {
        "start": {
          "line": 629,
          "column": 8
        },
        "end": {
          "line": 629,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "else",
        "keyword": "else",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "else",
      "start": 23161,
      "end": 23165,
      "loc": {
        "start": {
          "line": 629,
          "column": 10
        },
        "end": {
          "line": 629,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23166,
      "end": 23167,
      "loc": {
        "start": {
          "line": 629,
          "column": 15
        },
        "end": {
          "line": 629,
          "column": 16
        }
      }
    },
    {
      "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": 23178,
      "end": 23183,
      "loc": {
        "start": {
          "line": 630,
          "column": 10
        },
        "end": {
          "line": 630,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 23184,
      "end": 23201,
      "loc": {
        "start": {
          "line": 630,
          "column": 16
        },
        "end": {
          "line": 630,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23202,
      "end": 23203,
      "loc": {
        "start": {
          "line": 630,
          "column": 34
        },
        "end": {
          "line": 630,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 23204,
      "end": 23207,
      "loc": {
        "start": {
          "line": 630,
          "column": 36
        },
        "end": {
          "line": 630,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23207,
      "end": 23208,
      "loc": {
        "start": {
          "line": 630,
          "column": 39
        },
        "end": {
          "line": 630,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 23208,
      "end": 23219,
      "loc": {
        "start": {
          "line": 630,
          "column": 40
        },
        "end": {
          "line": 630,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23219,
      "end": 23220,
      "loc": {
        "start": {
          "line": 630,
          "column": 51
        },
        "end": {
          "line": 630,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 23220,
      "end": 23227,
      "loc": {
        "start": {
          "line": 630,
          "column": 52
        },
        "end": {
          "line": 630,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23227,
      "end": 23228,
      "loc": {
        "start": {
          "line": 630,
          "column": 59
        },
        "end": {
          "line": 630,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 23228,
      "end": 23233,
      "loc": {
        "start": {
          "line": 630,
          "column": 60
        },
        "end": {
          "line": 630,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23233,
      "end": 23234,
      "loc": {
        "start": {
          "line": 630,
          "column": 65
        },
        "end": {
          "line": 630,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 23234,
      "end": 23238,
      "loc": {
        "start": {
          "line": 630,
          "column": 66
        },
        "end": {
          "line": 630,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23238,
      "end": 23239,
      "loc": {
        "start": {
          "line": 630,
          "column": 70
        },
        "end": {
          "line": 630,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23239,
      "end": 23240,
      "loc": {
        "start": {
          "line": 630,
          "column": 71
        },
        "end": {
          "line": 630,
          "column": 72
        }
      }
    },
    {
      "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": 23251,
      "end": 23256,
      "loc": {
        "start": {
          "line": 631,
          "column": 10
        },
        "end": {
          "line": 631,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23257,
      "end": 23267,
      "loc": {
        "start": {
          "line": 631,
          "column": 16
        },
        "end": {
          "line": 631,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23268,
      "end": 23269,
      "loc": {
        "start": {
          "line": 631,
          "column": 27
        },
        "end": {
          "line": 631,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 23270,
      "end": 23271,
      "loc": {
        "start": {
          "line": 631,
          "column": 29
        },
        "end": {
          "line": 631,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23271,
      "end": 23272,
      "loc": {
        "start": {
          "line": 631,
          "column": 30
        },
        "end": {
          "line": 631,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 23272,
      "end": 23280,
      "loc": {
        "start": {
          "line": 631,
          "column": 31
        },
        "end": {
          "line": 631,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23280,
      "end": 23281,
      "loc": {
        "start": {
          "line": 631,
          "column": 39
        },
        "end": {
          "line": 631,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23281,
      "end": 23282,
      "loc": {
        "start": {
          "line": 631,
          "column": 40
        },
        "end": {
          "line": 631,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23282,
      "end": 23283,
      "loc": {
        "start": {
          "line": 631,
          "column": 41
        },
        "end": {
          "line": 631,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23283,
      "end": 23284,
      "loc": {
        "start": {
          "line": 631,
          "column": 42
        },
        "end": {
          "line": 631,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 23285,
      "end": 23302,
      "loc": {
        "start": {
          "line": 631,
          "column": 44
        },
        "end": {
          "line": 631,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23302,
      "end": 23303,
      "loc": {
        "start": {
          "line": 631,
          "column": 61
        },
        "end": {
          "line": 631,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 23304,
      "end": 23321,
      "loc": {
        "start": {
          "line": 631,
          "column": 63
        },
        "end": {
          "line": 631,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23321,
      "end": 23322,
      "loc": {
        "start": {
          "line": 631,
          "column": 80
        },
        "end": {
          "line": 631,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23322,
      "end": 23323,
      "loc": {
        "start": {
          "line": 631,
          "column": 81
        },
        "end": {
          "line": 631,
          "column": 82
        }
      }
    },
    {
      "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": 23335,
      "end": 23337,
      "loc": {
        "start": {
          "line": 633,
          "column": 10
        },
        "end": {
          "line": 633,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23338,
      "end": 23339,
      "loc": {
        "start": {
          "line": 633,
          "column": 13
        },
        "end": {
          "line": 633,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 23339,
      "end": 23340,
      "loc": {
        "start": {
          "line": 633,
          "column": 14
        },
        "end": {
          "line": 633,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23340,
      "end": 23341,
      "loc": {
        "start": {
          "line": 633,
          "column": 15
        },
        "end": {
          "line": 633,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "some",
      "start": 23341,
      "end": 23345,
      "loc": {
        "start": {
          "line": 633,
          "column": 16
        },
        "end": {
          "line": 633,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23345,
      "end": 23346,
      "loc": {
        "start": {
          "line": 633,
          "column": 20
        },
        "end": {
          "line": 633,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 23346,
      "end": 23352,
      "loc": {
        "start": {
          "line": 633,
          "column": 21
        },
        "end": {
          "line": 633,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23352,
      "end": 23353,
      "loc": {
        "start": {
          "line": 633,
          "column": 27
        },
        "end": {
          "line": 633,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 23353,
      "end": 23357,
      "loc": {
        "start": {
          "line": 633,
          "column": 28
        },
        "end": {
          "line": 633,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23357,
      "end": 23358,
      "loc": {
        "start": {
          "line": 633,
          "column": 32
        },
        "end": {
          "line": 633,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23358,
      "end": 23368,
      "loc": {
        "start": {
          "line": 633,
          "column": 33
        },
        "end": {
          "line": 633,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23368,
      "end": 23369,
      "loc": {
        "start": {
          "line": 633,
          "column": 43
        },
        "end": {
          "line": 633,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23369,
      "end": 23370,
      "loc": {
        "start": {
          "line": 633,
          "column": 44
        },
        "end": {
          "line": 633,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 23371,
      "end": 23380,
      "loc": {
        "start": {
          "line": 633,
          "column": 46
        },
        "end": {
          "line": 633,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23381,
      "end": 23383,
      "loc": {
        "start": {
          "line": 633,
          "column": 56
        },
        "end": {
          "line": 633,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23384,
      "end": 23394,
      "loc": {
        "start": {
          "line": 633,
          "column": 59
        },
        "end": {
          "line": 633,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23394,
      "end": 23395,
      "loc": {
        "start": {
          "line": 633,
          "column": 69
        },
        "end": {
          "line": 633,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 23395,
      "end": 23404,
      "loc": {
        "start": {
          "line": 633,
          "column": 70
        },
        "end": {
          "line": 633,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23404,
      "end": 23405,
      "loc": {
        "start": {
          "line": 633,
          "column": 79
        },
        "end": {
          "line": 633,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": "==/!=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 6,
        "updateContext": null
      },
      "value": "!==",
      "start": 23406,
      "end": 23409,
      "loc": {
        "start": {
          "line": 633,
          "column": 81
        },
        "end": {
          "line": 633,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "existingAssociation",
      "start": 23410,
      "end": 23429,
      "loc": {
        "start": {
          "line": 633,
          "column": 85
        },
        "end": {
          "line": 633,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23429,
      "end": 23430,
      "loc": {
        "start": {
          "line": 633,
          "column": 104
        },
        "end": {
          "line": 633,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attribute",
      "start": 23430,
      "end": 23439,
      "loc": {
        "start": {
          "line": 633,
          "column": 105
        },
        "end": {
          "line": 633,
          "column": 114
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23439,
      "end": 23440,
      "loc": {
        "start": {
          "line": 633,
          "column": 114
        },
        "end": {
          "line": 633,
          "column": 115
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23440,
      "end": 23441,
      "loc": {
        "start": {
          "line": 633,
          "column": 115
        },
        "end": {
          "line": 633,
          "column": 116
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23441,
      "end": 23442,
      "loc": {
        "start": {
          "line": 633,
          "column": 116
        },
        "end": {
          "line": 633,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23443,
      "end": 23444,
      "loc": {
        "start": {
          "line": 633,
          "column": 118
        },
        "end": {
          "line": 633,
          "column": 119
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "changedAssociations",
      "start": 23457,
      "end": 23476,
      "loc": {
        "start": {
          "line": 634,
          "column": 12
        },
        "end": {
          "line": 634,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23476,
      "end": 23477,
      "loc": {
        "start": {
          "line": 634,
          "column": 31
        },
        "end": {
          "line": 634,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 23477,
      "end": 23481,
      "loc": {
        "start": {
          "line": 634,
          "column": 32
        },
        "end": {
          "line": 634,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23481,
      "end": 23482,
      "loc": {
        "start": {
          "line": 634,
          "column": 36
        },
        "end": {
          "line": 634,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "obj",
      "start": 23482,
      "end": 23485,
      "loc": {
        "start": {
          "line": 634,
          "column": 37
        },
        "end": {
          "line": 634,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23485,
      "end": 23486,
      "loc": {
        "start": {
          "line": 634,
          "column": 40
        },
        "end": {
          "line": 634,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23486,
      "end": 23487,
      "loc": {
        "start": {
          "line": 634,
          "column": 41
        },
        "end": {
          "line": 634,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23498,
      "end": 23499,
      "loc": {
        "start": {
          "line": 635,
          "column": 10
        },
        "end": {
          "line": 635,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23508,
      "end": 23509,
      "loc": {
        "start": {
          "line": 636,
          "column": 8
        },
        "end": {
          "line": 636,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23516,
      "end": 23517,
      "loc": {
        "start": {
          "line": 637,
          "column": 6
        },
        "end": {
          "line": 637,
          "column": 7
        }
      }
    },
    {
      "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": 23525,
      "end": 23527,
      "loc": {
        "start": {
          "line": 639,
          "column": 6
        },
        "end": {
          "line": 639,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23528,
      "end": 23529,
      "loc": {
        "start": {
          "line": 639,
          "column": 9
        },
        "end": {
          "line": 639,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 23529,
      "end": 23548,
      "loc": {
        "start": {
          "line": 639,
          "column": 10
        },
        "end": {
          "line": 639,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23548,
      "end": 23549,
      "loc": {
        "start": {
          "line": 639,
          "column": 29
        },
        "end": {
          "line": 639,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "length",
      "start": 23549,
      "end": 23555,
      "loc": {
        "start": {
          "line": 639,
          "column": 30
        },
        "end": {
          "line": 639,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "</>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": ">",
      "start": 23556,
      "end": 23557,
      "loc": {
        "start": {
          "line": 639,
          "column": 37
        },
        "end": {
          "line": 639,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "num",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": 0,
      "start": 23558,
      "end": 23559,
      "loc": {
        "start": {
          "line": 639,
          "column": 39
        },
        "end": {
          "line": 639,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23559,
      "end": 23560,
      "loc": {
        "start": {
          "line": 639,
          "column": 40
        },
        "end": {
          "line": 639,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23561,
      "end": 23562,
      "loc": {
        "start": {
          "line": 639,
          "column": 42
        },
        "end": {
          "line": 639,
          "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": 23571,
      "end": 23576,
      "loc": {
        "start": {
          "line": 640,
          "column": 8
        },
        "end": {
          "line": 640,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulk",
      "start": 23577,
      "end": 23581,
      "loc": {
        "start": {
          "line": 640,
          "column": 14
        },
        "end": {
          "line": 640,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23582,
      "end": 23583,
      "loc": {
        "start": {
          "line": 640,
          "column": 19
        },
        "end": {
          "line": 640,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObjects",
      "start": 23584,
      "end": 23603,
      "loc": {
        "start": {
          "line": 640,
          "column": 21
        },
        "end": {
          "line": 640,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23603,
      "end": 23604,
      "loc": {
        "start": {
          "line": 640,
          "column": 40
        },
        "end": {
          "line": 640,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 23604,
      "end": 23607,
      "loc": {
        "start": {
          "line": 640,
          "column": 41
        },
        "end": {
          "line": 640,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23607,
      "end": 23608,
      "loc": {
        "start": {
          "line": 640,
          "column": 44
        },
        "end": {
          "line": 640,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 23608,
      "end": 23626,
      "loc": {
        "start": {
          "line": 640,
          "column": 45
        },
        "end": {
          "line": 640,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23627,
      "end": 23629,
      "loc": {
        "start": {
          "line": 640,
          "column": 64
        },
        "end": {
          "line": 640,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23630,
      "end": 23631,
      "loc": {
        "start": {
          "line": 640,
          "column": 67
        },
        "end": {
          "line": 640,
          "column": 68
        }
      }
    },
    {
      "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": 23642,
      "end": 23647,
      "loc": {
        "start": {
          "line": 641,
          "column": 10
        },
        "end": {
          "line": 641,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 23648,
      "end": 23665,
      "loc": {
        "start": {
          "line": 641,
          "column": 16
        },
        "end": {
          "line": 641,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23666,
      "end": 23667,
      "loc": {
        "start": {
          "line": 641,
          "column": 34
        },
        "end": {
          "line": 641,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 23668,
      "end": 23686,
      "loc": {
        "start": {
          "line": 641,
          "column": 36
        },
        "end": {
          "line": 641,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23686,
      "end": 23687,
      "loc": {
        "start": {
          "line": 641,
          "column": 54
        },
        "end": {
          "line": 641,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 23687,
      "end": 23698,
      "loc": {
        "start": {
          "line": 641,
          "column": 55
        },
        "end": {
          "line": 641,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23698,
      "end": 23699,
      "loc": {
        "start": {
          "line": 641,
          "column": 66
        },
        "end": {
          "line": 641,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 23699,
      "end": 23706,
      "loc": {
        "start": {
          "line": 641,
          "column": 67
        },
        "end": {
          "line": 641,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23706,
      "end": 23707,
      "loc": {
        "start": {
          "line": 641,
          "column": 74
        },
        "end": {
          "line": 641,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 23707,
      "end": 23712,
      "loc": {
        "start": {
          "line": 641,
          "column": 75
        },
        "end": {
          "line": 641,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23712,
      "end": 23713,
      "loc": {
        "start": {
          "line": 641,
          "column": 80
        },
        "end": {
          "line": 641,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 23713,
      "end": 23717,
      "loc": {
        "start": {
          "line": 641,
          "column": 81
        },
        "end": {
          "line": 641,
          "column": 85
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23717,
      "end": 23718,
      "loc": {
        "start": {
          "line": 641,
          "column": 85
        },
        "end": {
          "line": 641,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23718,
      "end": 23719,
      "loc": {
        "start": {
          "line": 641,
          "column": 86
        },
        "end": {
          "line": 641,
          "column": 87
        }
      }
    },
    {
      "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": 23730,
      "end": 23735,
      "loc": {
        "start": {
          "line": 642,
          "column": 10
        },
        "end": {
          "line": 642,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23736,
      "end": 23746,
      "loc": {
        "start": {
          "line": 642,
          "column": 16
        },
        "end": {
          "line": 642,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23747,
      "end": 23748,
      "loc": {
        "start": {
          "line": 642,
          "column": 27
        },
        "end": {
          "line": 642,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 23749,
      "end": 23750,
      "loc": {
        "start": {
          "line": 642,
          "column": 29
        },
        "end": {
          "line": 642,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23750,
      "end": 23751,
      "loc": {
        "start": {
          "line": 642,
          "column": 30
        },
        "end": {
          "line": 642,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 23751,
      "end": 23759,
      "loc": {
        "start": {
          "line": 642,
          "column": 31
        },
        "end": {
          "line": 642,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23759,
      "end": 23760,
      "loc": {
        "start": {
          "line": 642,
          "column": 39
        },
        "end": {
          "line": 642,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23760,
      "end": 23761,
      "loc": {
        "start": {
          "line": 642,
          "column": 40
        },
        "end": {
          "line": 642,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23761,
      "end": 23762,
      "loc": {
        "start": {
          "line": 642,
          "column": 41
        },
        "end": {
          "line": 642,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23762,
      "end": 23763,
      "loc": {
        "start": {
          "line": 642,
          "column": 42
        },
        "end": {
          "line": 642,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 23764,
      "end": 23781,
      "loc": {
        "start": {
          "line": 642,
          "column": 44
        },
        "end": {
          "line": 642,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23781,
      "end": 23782,
      "loc": {
        "start": {
          "line": 642,
          "column": 61
        },
        "end": {
          "line": 642,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 23783,
      "end": 23800,
      "loc": {
        "start": {
          "line": 642,
          "column": 63
        },
        "end": {
          "line": 642,
          "column": 80
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23800,
      "end": 23801,
      "loc": {
        "start": {
          "line": 642,
          "column": 80
        },
        "end": {
          "line": 642,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23801,
      "end": 23802,
      "loc": {
        "start": {
          "line": 642,
          "column": 81
        },
        "end": {
          "line": 642,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23814,
      "end": 23824,
      "loc": {
        "start": {
          "line": 644,
          "column": 10
        },
        "end": {
          "line": 644,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23824,
      "end": 23825,
      "loc": {
        "start": {
          "line": 644,
          "column": 20
        },
        "end": {
          "line": 644,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 23825,
      "end": 23835,
      "loc": {
        "start": {
          "line": 644,
          "column": 21
        },
        "end": {
          "line": 644,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23835,
      "end": 23836,
      "loc": {
        "start": {
          "line": 644,
          "column": 31
        },
        "end": {
          "line": 644,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23837,
      "end": 23838,
      "loc": {
        "start": {
          "line": 644,
          "column": 33
        },
        "end": {
          "line": 644,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 23839,
      "end": 23853,
      "loc": {
        "start": {
          "line": 644,
          "column": 35
        },
        "end": {
          "line": 644,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23853,
      "end": 23854,
      "loc": {
        "start": {
          "line": 644,
          "column": 49
        },
        "end": {
          "line": 644,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 23854,
      "end": 23857,
      "loc": {
        "start": {
          "line": 644,
          "column": 50
        },
        "end": {
          "line": 644,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23857,
      "end": 23858,
      "loc": {
        "start": {
          "line": 644,
          "column": 53
        },
        "end": {
          "line": 644,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 23858,
      "end": 23867,
      "loc": {
        "start": {
          "line": 644,
          "column": 54
        },
        "end": {
          "line": 644,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23867,
      "end": 23868,
      "loc": {
        "start": {
          "line": 644,
          "column": 63
        },
        "end": {
          "line": 644,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23868,
      "end": 23869,
      "loc": {
        "start": {
          "line": 644,
          "column": 64
        },
        "end": {
          "line": 644,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23880,
      "end": 23890,
      "loc": {
        "start": {
          "line": 645,
          "column": 10
        },
        "end": {
          "line": 645,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23890,
      "end": 23891,
      "loc": {
        "start": {
          "line": 645,
          "column": 20
        },
        "end": {
          "line": 645,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 23891,
      "end": 23908,
      "loc": {
        "start": {
          "line": 645,
          "column": 21
        },
        "end": {
          "line": 645,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23908,
      "end": 23909,
      "loc": {
        "start": {
          "line": 645,
          "column": 38
        },
        "end": {
          "line": 645,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 23910,
      "end": 23911,
      "loc": {
        "start": {
          "line": 645,
          "column": 40
        },
        "end": {
          "line": 645,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "unassociatedObject",
      "start": 23912,
      "end": 23930,
      "loc": {
        "start": {
          "line": 645,
          "column": 42
        },
        "end": {
          "line": 645,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23930,
      "end": 23931,
      "loc": {
        "start": {
          "line": 645,
          "column": 60
        },
        "end": {
          "line": 645,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 23931,
      "end": 23934,
      "loc": {
        "start": {
          "line": 645,
          "column": 61
        },
        "end": {
          "line": 645,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23934,
      "end": 23935,
      "loc": {
        "start": {
          "line": 645,
          "column": 64
        },
        "end": {
          "line": 645,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 23935,
      "end": 23944,
      "loc": {
        "start": {
          "line": 645,
          "column": 65
        },
        "end": {
          "line": 645,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23944,
      "end": 23945,
      "loc": {
        "start": {
          "line": 645,
          "column": 74
        },
        "end": {
          "line": 645,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23945,
      "end": 23946,
      "loc": {
        "start": {
          "line": 645,
          "column": 75
        },
        "end": {
          "line": 645,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 23958,
      "end": 23959,
      "loc": {
        "start": {
          "line": 647,
          "column": 10
        },
        "end": {
          "line": 647,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23959,
      "end": 23960,
      "loc": {
        "start": {
          "line": 647,
          "column": 11
        },
        "end": {
          "line": 647,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 23960,
      "end": 23966,
      "loc": {
        "start": {
          "line": 647,
          "column": 12
        },
        "end": {
          "line": 647,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 23966,
      "end": 23967,
      "loc": {
        "start": {
          "line": 647,
          "column": 18
        },
        "end": {
          "line": 647,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 23967,
      "end": 23977,
      "loc": {
        "start": {
          "line": 647,
          "column": 19
        },
        "end": {
          "line": 647,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23977,
      "end": 23978,
      "loc": {
        "start": {
          "line": 647,
          "column": 29
        },
        "end": {
          "line": 647,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 23979,
      "end": 23990,
      "loc": {
        "start": {
          "line": 647,
          "column": 31
        },
        "end": {
          "line": 647,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23990,
      "end": 23991,
      "loc": {
        "start": {
          "line": 647,
          "column": 42
        },
        "end": {
          "line": 647,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 23991,
      "end": 23998,
      "loc": {
        "start": {
          "line": 647,
          "column": 43
        },
        "end": {
          "line": 647,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 23998,
      "end": 23999,
      "loc": {
        "start": {
          "line": 647,
          "column": 50
        },
        "end": {
          "line": 647,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 23999,
      "end": 24004,
      "loc": {
        "start": {
          "line": 647,
          "column": 51
        },
        "end": {
          "line": 647,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24004,
      "end": 24005,
      "loc": {
        "start": {
          "line": 647,
          "column": 56
        },
        "end": {
          "line": 647,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24005,
      "end": 24006,
      "loc": {
        "start": {
          "line": 647,
          "column": 57
        },
        "end": {
          "line": 647,
          "column": 58
        }
      }
    },
    {
      "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": 24018,
      "end": 24024,
      "loc": {
        "start": {
          "line": 649,
          "column": 10
        },
        "end": {
          "line": 649,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 24025,
      "end": 24035,
      "loc": {
        "start": {
          "line": 649,
          "column": 17
        },
        "end": {
          "line": 649,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24035,
      "end": 24036,
      "loc": {
        "start": {
          "line": 649,
          "column": 27
        },
        "end": {
          "line": 649,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24045,
      "end": 24046,
      "loc": {
        "start": {
          "line": 650,
          "column": 8
        },
        "end": {
          "line": 650,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24046,
      "end": 24047,
      "loc": {
        "start": {
          "line": 650,
          "column": 9
        },
        "end": {
          "line": 650,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24047,
      "end": 24048,
      "loc": {
        "start": {
          "line": 650,
          "column": 10
        },
        "end": {
          "line": 650,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 24058,
      "end": 24066,
      "loc": {
        "start": {
          "line": 652,
          "column": 8
        },
        "end": {
          "line": 652,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24066,
      "end": 24067,
      "loc": {
        "start": {
          "line": 652,
          "column": 16
        },
        "end": {
          "line": 652,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 24067,
      "end": 24071,
      "loc": {
        "start": {
          "line": 652,
          "column": 17
        },
        "end": {
          "line": 652,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24071,
      "end": 24072,
      "loc": {
        "start": {
          "line": 652,
          "column": 21
        },
        "end": {
          "line": 652,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 24072,
      "end": 24083,
      "loc": {
        "start": {
          "line": 652,
          "column": 22
        },
        "end": {
          "line": 652,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24083,
      "end": 24084,
      "loc": {
        "start": {
          "line": 652,
          "column": 33
        },
        "end": {
          "line": 652,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 24084,
      "end": 24091,
      "loc": {
        "start": {
          "line": 652,
          "column": 34
        },
        "end": {
          "line": 652,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24091,
      "end": 24092,
      "loc": {
        "start": {
          "line": 652,
          "column": 41
        },
        "end": {
          "line": 652,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 24092,
      "end": 24097,
      "loc": {
        "start": {
          "line": 652,
          "column": 42
        },
        "end": {
          "line": 652,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24097,
      "end": 24098,
      "loc": {
        "start": {
          "line": 652,
          "column": 47
        },
        "end": {
          "line": 652,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulkCreate",
      "start": 24098,
      "end": 24108,
      "loc": {
        "start": {
          "line": 652,
          "column": 48
        },
        "end": {
          "line": 652,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24108,
      "end": 24109,
      "loc": {
        "start": {
          "line": 652,
          "column": 58
        },
        "end": {
          "line": 652,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "bulk",
      "start": 24109,
      "end": 24113,
      "loc": {
        "start": {
          "line": 652,
          "column": 59
        },
        "end": {
          "line": 652,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24113,
      "end": 24114,
      "loc": {
        "start": {
          "line": 652,
          "column": 63
        },
        "end": {
          "line": 652,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 24115,
      "end": 24116,
      "loc": {
        "start": {
          "line": 652,
          "column": 65
        },
        "end": {
          "line": 652,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24116,
      "end": 24117,
      "loc": {
        "start": {
          "line": 652,
          "column": 66
        },
        "end": {
          "line": 652,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 24117,
      "end": 24123,
      "loc": {
        "start": {
          "line": 652,
          "column": 67
        },
        "end": {
          "line": 652,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24123,
      "end": 24124,
      "loc": {
        "start": {
          "line": 652,
          "column": 73
        },
        "end": {
          "line": 652,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24124,
      "end": 24125,
      "loc": {
        "start": {
          "line": 652,
          "column": 74
        },
        "end": {
          "line": 652,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "validate",
      "start": 24126,
      "end": 24134,
      "loc": {
        "start": {
          "line": 652,
          "column": 76
        },
        "end": {
          "line": 652,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24134,
      "end": 24135,
      "loc": {
        "start": {
          "line": 652,
          "column": 84
        },
        "end": {
          "line": 652,
          "column": 85
        }
      }
    },
    {
      "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": 24136,
      "end": 24140,
      "loc": {
        "start": {
          "line": 652,
          "column": 86
        },
        "end": {
          "line": 652,
          "column": 90
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24141,
      "end": 24142,
      "loc": {
        "start": {
          "line": 652,
          "column": 91
        },
        "end": {
          "line": 652,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24142,
      "end": 24143,
      "loc": {
        "start": {
          "line": 652,
          "column": 92
        },
        "end": {
          "line": 652,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 24144,
      "end": 24151,
      "loc": {
        "start": {
          "line": 652,
          "column": 94
        },
        "end": {
          "line": 652,
          "column": 101
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24151,
      "end": 24152,
      "loc": {
        "start": {
          "line": 652,
          "column": 101
        },
        "end": {
          "line": 652,
          "column": 102
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24152,
      "end": 24153,
      "loc": {
        "start": {
          "line": 652,
          "column": 102
        },
        "end": {
          "line": 652,
          "column": 103
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24153,
      "end": 24154,
      "loc": {
        "start": {
          "line": 652,
          "column": 103
        },
        "end": {
          "line": 652,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24154,
      "end": 24155,
      "loc": {
        "start": {
          "line": 652,
          "column": 104
        },
        "end": {
          "line": 652,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24162,
      "end": 24163,
      "loc": {
        "start": {
          "line": 653,
          "column": 6
        },
        "end": {
          "line": 653,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "for",
        "keyword": "for",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": true,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "for",
      "start": 24171,
      "end": 24174,
      "loc": {
        "start": {
          "line": 655,
          "column": 6
        },
        "end": {
          "line": 655,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24175,
      "end": 24176,
      "loc": {
        "start": {
          "line": 655,
          "column": 10
        },
        "end": {
          "line": 655,
          "column": 11
        }
      }
    },
    {
      "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": 24176,
      "end": 24181,
      "loc": {
        "start": {
          "line": 655,
          "column": 11
        },
        "end": {
          "line": 655,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assoc",
      "start": 24182,
      "end": 24187,
      "loc": {
        "start": {
          "line": 655,
          "column": 17
        },
        "end": {
          "line": 655,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "of",
      "start": 24188,
      "end": 24190,
      "loc": {
        "start": {
          "line": 655,
          "column": 23
        },
        "end": {
          "line": 655,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "changedAssociations",
      "start": 24191,
      "end": 24210,
      "loc": {
        "start": {
          "line": 655,
          "column": 26
        },
        "end": {
          "line": 655,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24210,
      "end": 24211,
      "loc": {
        "start": {
          "line": 655,
          "column": 45
        },
        "end": {
          "line": 655,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24212,
      "end": 24213,
      "loc": {
        "start": {
          "line": 655,
          "column": 47
        },
        "end": {
          "line": 655,
          "column": 48
        }
      }
    },
    {
      "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": 24222,
      "end": 24225,
      "loc": {
        "start": {
          "line": 656,
          "column": 8
        },
        "end": {
          "line": 656,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 24226,
      "end": 24243,
      "loc": {
        "start": {
          "line": 656,
          "column": 12
        },
        "end": {
          "line": 656,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24244,
      "end": 24245,
      "loc": {
        "start": {
          "line": 656,
          "column": 30
        },
        "end": {
          "line": 656,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assoc",
      "start": 24246,
      "end": 24251,
      "loc": {
        "start": {
          "line": 656,
          "column": 32
        },
        "end": {
          "line": 656,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24251,
      "end": 24252,
      "loc": {
        "start": {
          "line": 656,
          "column": 37
        },
        "end": {
          "line": 656,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 24252,
      "end": 24263,
      "loc": {
        "start": {
          "line": 656,
          "column": 38
        },
        "end": {
          "line": 656,
          "column": 49
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24263,
      "end": 24264,
      "loc": {
        "start": {
          "line": 656,
          "column": 49
        },
        "end": {
          "line": 656,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 24264,
      "end": 24271,
      "loc": {
        "start": {
          "line": 656,
          "column": 50
        },
        "end": {
          "line": 656,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24271,
      "end": 24272,
      "loc": {
        "start": {
          "line": 656,
          "column": 57
        },
        "end": {
          "line": 656,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 24272,
      "end": 24277,
      "loc": {
        "start": {
          "line": 656,
          "column": 58
        },
        "end": {
          "line": 656,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24277,
      "end": 24278,
      "loc": {
        "start": {
          "line": 656,
          "column": 63
        },
        "end": {
          "line": 656,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "name",
      "start": 24278,
      "end": 24282,
      "loc": {
        "start": {
          "line": 656,
          "column": 64
        },
        "end": {
          "line": 656,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24282,
      "end": 24283,
      "loc": {
        "start": {
          "line": 656,
          "column": 68
        },
        "end": {
          "line": 656,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24283,
      "end": 24284,
      "loc": {
        "start": {
          "line": 656,
          "column": 69
        },
        "end": {
          "line": 656,
          "column": 70
        }
      }
    },
    {
      "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": 24293,
      "end": 24298,
      "loc": {
        "start": {
          "line": 657,
          "column": 8
        },
        "end": {
          "line": 657,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 24299,
      "end": 24309,
      "loc": {
        "start": {
          "line": 657,
          "column": 14
        },
        "end": {
          "line": 657,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24310,
      "end": 24311,
      "loc": {
        "start": {
          "line": 657,
          "column": 25
        },
        "end": {
          "line": 657,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 24312,
      "end": 24313,
      "loc": {
        "start": {
          "line": 657,
          "column": 27
        },
        "end": {
          "line": 657,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24313,
      "end": 24314,
      "loc": {
        "start": {
          "line": 657,
          "column": 28
        },
        "end": {
          "line": 657,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 24314,
      "end": 24322,
      "loc": {
        "start": {
          "line": 657,
          "column": 29
        },
        "end": {
          "line": 657,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24322,
      "end": 24323,
      "loc": {
        "start": {
          "line": 657,
          "column": 37
        },
        "end": {
          "line": 657,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24323,
      "end": 24324,
      "loc": {
        "start": {
          "line": 657,
          "column": 38
        },
        "end": {
          "line": 657,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24324,
      "end": 24325,
      "loc": {
        "start": {
          "line": 657,
          "column": 39
        },
        "end": {
          "line": 657,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24325,
      "end": 24326,
      "loc": {
        "start": {
          "line": 657,
          "column": 40
        },
        "end": {
          "line": 657,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 24327,
      "end": 24344,
      "loc": {
        "start": {
          "line": 657,
          "column": 42
        },
        "end": {
          "line": 657,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24344,
      "end": 24345,
      "loc": {
        "start": {
          "line": 657,
          "column": 59
        },
        "end": {
          "line": 657,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaultAttributes",
      "start": 24346,
      "end": 24363,
      "loc": {
        "start": {
          "line": 657,
          "column": 61
        },
        "end": {
          "line": 657,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24363,
      "end": 24364,
      "loc": {
        "start": {
          "line": 657,
          "column": 78
        },
        "end": {
          "line": 657,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24364,
      "end": 24365,
      "loc": {
        "start": {
          "line": 657,
          "column": 79
        },
        "end": {
          "line": 657,
          "column": 80
        }
      }
    },
    {
      "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": 24374,
      "end": 24379,
      "loc": {
        "start": {
          "line": 658,
          "column": 8
        },
        "end": {
          "line": 658,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 24380,
      "end": 24385,
      "loc": {
        "start": {
          "line": 658,
          "column": 14
        },
        "end": {
          "line": 658,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24386,
      "end": 24387,
      "loc": {
        "start": {
          "line": 658,
          "column": 20
        },
        "end": {
          "line": 658,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24388,
      "end": 24389,
      "loc": {
        "start": {
          "line": 658,
          "column": 22
        },
        "end": {
          "line": 658,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24389,
      "end": 24390,
      "loc": {
        "start": {
          "line": 658,
          "column": 23
        },
        "end": {
          "line": 658,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24390,
      "end": 24391,
      "loc": {
        "start": {
          "line": 658,
          "column": 24
        },
        "end": {
          "line": 658,
          "column": 25
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Quick-fix for subtle bug when using existing objects that might have the through model attached (not as an attribute object)",
      "start": 24400,
      "end": 24527,
      "loc": {
        "start": {
          "line": 659,
          "column": 8
        },
        "end": {
          "line": 659,
          "column": 135
        }
      }
    },
    {
      "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": 24536,
      "end": 24538,
      "loc": {
        "start": {
          "line": 660,
          "column": 8
        },
        "end": {
          "line": 660,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24539,
      "end": 24540,
      "loc": {
        "start": {
          "line": 660,
          "column": 11
        },
        "end": {
          "line": 660,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 24540,
      "end": 24557,
      "loc": {
        "start": {
          "line": 660,
          "column": 12
        },
        "end": {
          "line": 660,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "instanceof",
        "keyword": "instanceof",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 7,
        "updateContext": null
      },
      "value": "instanceof",
      "start": 24558,
      "end": 24568,
      "loc": {
        "start": {
          "line": 660,
          "column": 30
        },
        "end": {
          "line": 660,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 24569,
      "end": 24580,
      "loc": {
        "start": {
          "line": 660,
          "column": 41
        },
        "end": {
          "line": 660,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24580,
      "end": 24581,
      "loc": {
        "start": {
          "line": 660,
          "column": 52
        },
        "end": {
          "line": 660,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 24581,
      "end": 24588,
      "loc": {
        "start": {
          "line": 660,
          "column": 53
        },
        "end": {
          "line": 660,
          "column": 60
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24588,
      "end": 24589,
      "loc": {
        "start": {
          "line": 660,
          "column": 60
        },
        "end": {
          "line": 660,
          "column": 61
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 24589,
      "end": 24594,
      "loc": {
        "start": {
          "line": 660,
          "column": 61
        },
        "end": {
          "line": 660,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24594,
      "end": 24595,
      "loc": {
        "start": {
          "line": 660,
          "column": 66
        },
        "end": {
          "line": 660,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24596,
      "end": 24597,
      "loc": {
        "start": {
          "line": 660,
          "column": 68
        },
        "end": {
          "line": 660,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "throughAttributes",
      "start": 24608,
      "end": 24625,
      "loc": {
        "start": {
          "line": 661,
          "column": 10
        },
        "end": {
          "line": 661,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24626,
      "end": 24627,
      "loc": {
        "start": {
          "line": 661,
          "column": 28
        },
        "end": {
          "line": 661,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24628,
      "end": 24629,
      "loc": {
        "start": {
          "line": 661,
          "column": 30
        },
        "end": {
          "line": 661,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24629,
      "end": 24630,
      "loc": {
        "start": {
          "line": 661,
          "column": 31
        },
        "end": {
          "line": 661,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24630,
      "end": 24631,
      "loc": {
        "start": {
          "line": 661,
          "column": 32
        },
        "end": {
          "line": 661,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24640,
      "end": 24641,
      "loc": {
        "start": {
          "line": 662,
          "column": 8
        },
        "end": {
          "line": 662,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 24651,
      "end": 24656,
      "loc": {
        "start": {
          "line": 664,
          "column": 8
        },
        "end": {
          "line": 664,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24656,
      "end": 24657,
      "loc": {
        "start": {
          "line": 664,
          "column": 13
        },
        "end": {
          "line": 664,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 24657,
      "end": 24667,
      "loc": {
        "start": {
          "line": 664,
          "column": 14
        },
        "end": {
          "line": 664,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24667,
      "end": 24668,
      "loc": {
        "start": {
          "line": 664,
          "column": 24
        },
        "end": {
          "line": 664,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24669,
      "end": 24670,
      "loc": {
        "start": {
          "line": 664,
          "column": 26
        },
        "end": {
          "line": 664,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 24671,
      "end": 24685,
      "loc": {
        "start": {
          "line": 664,
          "column": 28
        },
        "end": {
          "line": 664,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24685,
      "end": 24686,
      "loc": {
        "start": {
          "line": 664,
          "column": 42
        },
        "end": {
          "line": 664,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 24686,
      "end": 24689,
      "loc": {
        "start": {
          "line": 664,
          "column": 43
        },
        "end": {
          "line": 664,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24689,
      "end": 24690,
      "loc": {
        "start": {
          "line": 664,
          "column": 46
        },
        "end": {
          "line": 664,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceKey",
      "start": 24690,
      "end": 24699,
      "loc": {
        "start": {
          "line": 664,
          "column": 47
        },
        "end": {
          "line": 664,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24699,
      "end": 24700,
      "loc": {
        "start": {
          "line": 664,
          "column": 56
        },
        "end": {
          "line": 664,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24700,
      "end": 24701,
      "loc": {
        "start": {
          "line": 664,
          "column": 57
        },
        "end": {
          "line": 664,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 24710,
      "end": 24715,
      "loc": {
        "start": {
          "line": 665,
          "column": 8
        },
        "end": {
          "line": 665,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24715,
      "end": 24716,
      "loc": {
        "start": {
          "line": 665,
          "column": 13
        },
        "end": {
          "line": 665,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 24716,
      "end": 24733,
      "loc": {
        "start": {
          "line": 665,
          "column": 14
        },
        "end": {
          "line": 665,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24733,
      "end": 24734,
      "loc": {
        "start": {
          "line": 665,
          "column": 31
        },
        "end": {
          "line": 665,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 24735,
      "end": 24736,
      "loc": {
        "start": {
          "line": 665,
          "column": 33
        },
        "end": {
          "line": 665,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assoc",
      "start": 24737,
      "end": 24742,
      "loc": {
        "start": {
          "line": 665,
          "column": 35
        },
        "end": {
          "line": 665,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24742,
      "end": 24743,
      "loc": {
        "start": {
          "line": 665,
          "column": 40
        },
        "end": {
          "line": 665,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 24743,
      "end": 24746,
      "loc": {
        "start": {
          "line": 665,
          "column": 41
        },
        "end": {
          "line": 665,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24746,
      "end": 24747,
      "loc": {
        "start": {
          "line": 665,
          "column": 44
        },
        "end": {
          "line": 665,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "targetKey",
      "start": 24747,
      "end": 24756,
      "loc": {
        "start": {
          "line": 665,
          "column": 45
        },
        "end": {
          "line": 665,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24756,
      "end": 24757,
      "loc": {
        "start": {
          "line": 665,
          "column": 54
        },
        "end": {
          "line": 665,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24757,
      "end": 24758,
      "loc": {
        "start": {
          "line": 665,
          "column": 55
        },
        "end": {
          "line": 665,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 24768,
      "end": 24776,
      "loc": {
        "start": {
          "line": 667,
          "column": 8
        },
        "end": {
          "line": 667,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24776,
      "end": 24777,
      "loc": {
        "start": {
          "line": 667,
          "column": 16
        },
        "end": {
          "line": 667,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "push",
      "start": 24777,
      "end": 24781,
      "loc": {
        "start": {
          "line": 667,
          "column": 17
        },
        "end": {
          "line": 667,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24781,
      "end": 24782,
      "loc": {
        "start": {
          "line": 667,
          "column": 21
        },
        "end": {
          "line": 667,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 24782,
      "end": 24793,
      "loc": {
        "start": {
          "line": 667,
          "column": 22
        },
        "end": {
          "line": 667,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24793,
      "end": 24794,
      "loc": {
        "start": {
          "line": 667,
          "column": 33
        },
        "end": {
          "line": 667,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 24794,
      "end": 24801,
      "loc": {
        "start": {
          "line": 667,
          "column": 34
        },
        "end": {
          "line": 667,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24801,
      "end": 24802,
      "loc": {
        "start": {
          "line": 667,
          "column": 41
        },
        "end": {
          "line": 667,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 24802,
      "end": 24807,
      "loc": {
        "start": {
          "line": 667,
          "column": 42
        },
        "end": {
          "line": 667,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24807,
      "end": 24808,
      "loc": {
        "start": {
          "line": 667,
          "column": 47
        },
        "end": {
          "line": 667,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "update",
      "start": 24808,
      "end": 24814,
      "loc": {
        "start": {
          "line": 667,
          "column": 48
        },
        "end": {
          "line": 667,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24814,
      "end": 24815,
      "loc": {
        "start": {
          "line": 667,
          "column": 54
        },
        "end": {
          "line": 667,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "attributes",
      "start": 24815,
      "end": 24825,
      "loc": {
        "start": {
          "line": 667,
          "column": 55
        },
        "end": {
          "line": 667,
          "column": 65
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24825,
      "end": 24826,
      "loc": {
        "start": {
          "line": 667,
          "column": 65
        },
        "end": {
          "line": 667,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 24827,
      "end": 24828,
      "loc": {
        "start": {
          "line": 667,
          "column": 67
        },
        "end": {
          "line": 667,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24828,
      "end": 24829,
      "loc": {
        "start": {
          "line": 667,
          "column": 68
        },
        "end": {
          "line": 667,
          "column": 69
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "extend",
      "start": 24829,
      "end": 24835,
      "loc": {
        "start": {
          "line": 667,
          "column": 69
        },
        "end": {
          "line": 667,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24835,
      "end": 24836,
      "loc": {
        "start": {
          "line": 667,
          "column": 75
        },
        "end": {
          "line": 667,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 24836,
      "end": 24843,
      "loc": {
        "start": {
          "line": 667,
          "column": 76
        },
        "end": {
          "line": 667,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24843,
      "end": 24844,
      "loc": {
        "start": {
          "line": 667,
          "column": 83
        },
        "end": {
          "line": 667,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24845,
      "end": 24846,
      "loc": {
        "start": {
          "line": 667,
          "column": 85
        },
        "end": {
          "line": 667,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 24846,
      "end": 24851,
      "loc": {
        "start": {
          "line": 667,
          "column": 86
        },
        "end": {
          "line": 667,
          "column": 91
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24851,
      "end": 24852,
      "loc": {
        "start": {
          "line": 667,
          "column": 91
        },
        "end": {
          "line": 667,
          "column": 92
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24852,
      "end": 24853,
      "loc": {
        "start": {
          "line": 667,
          "column": 92
        },
        "end": {
          "line": 667,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24853,
      "end": 24854,
      "loc": {
        "start": {
          "line": 667,
          "column": 93
        },
        "end": {
          "line": 667,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24854,
      "end": 24855,
      "loc": {
        "start": {
          "line": 667,
          "column": 94
        },
        "end": {
          "line": 667,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24855,
      "end": 24856,
      "loc": {
        "start": {
          "line": 667,
          "column": 95
        },
        "end": {
          "line": 667,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24863,
      "end": 24864,
      "loc": {
        "start": {
          "line": 668,
          "column": 6
        },
        "end": {
          "line": 668,
          "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": 24872,
      "end": 24878,
      "loc": {
        "start": {
          "line": 670,
          "column": 6
        },
        "end": {
          "line": 670,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Utils",
      "start": 24879,
      "end": 24884,
      "loc": {
        "start": {
          "line": 670,
          "column": 13
        },
        "end": {
          "line": 670,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24884,
      "end": 24885,
      "loc": {
        "start": {
          "line": 670,
          "column": 18
        },
        "end": {
          "line": 670,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Promise",
      "start": 24885,
      "end": 24892,
      "loc": {
        "start": {
          "line": 670,
          "column": 19
        },
        "end": {
          "line": 670,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24892,
      "end": 24893,
      "loc": {
        "start": {
          "line": 670,
          "column": 26
        },
        "end": {
          "line": 670,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "all",
      "start": 24893,
      "end": 24896,
      "loc": {
        "start": {
          "line": 670,
          "column": 27
        },
        "end": {
          "line": 670,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24896,
      "end": 24897,
      "loc": {
        "start": {
          "line": 670,
          "column": 30
        },
        "end": {
          "line": 670,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "promises",
      "start": 24897,
      "end": 24905,
      "loc": {
        "start": {
          "line": 670,
          "column": 31
        },
        "end": {
          "line": 670,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24905,
      "end": 24906,
      "loc": {
        "start": {
          "line": 670,
          "column": 39
        },
        "end": {
          "line": 670,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24906,
      "end": 24907,
      "loc": {
        "start": {
          "line": 670,
          "column": 40
        },
        "end": {
          "line": 670,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24912,
      "end": 24913,
      "loc": {
        "start": {
          "line": 671,
          "column": 4
        },
        "end": {
          "line": 671,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24913,
      "end": 24914,
      "loc": {
        "start": {
          "line": 671,
          "column": 5
        },
        "end": {
          "line": 671,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 24914,
      "end": 24915,
      "loc": {
        "start": {
          "line": 671,
          "column": 6
        },
        "end": {
          "line": 671,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 24918,
      "end": 24919,
      "loc": {
        "start": {
          "line": 672,
          "column": 2
        },
        "end": {
          "line": 672,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Un-associate one or more instance(s).\n   *\n   * @param {Model|String|Number} [oldAssociated] Can be an Instance or its primary key, or a mixed array of instances and primary keys\n   * @param {Object} [options] Options passed to `through.destroy`\n   * @return {Promise}\n   ",
      "start": 24923,
      "end": 25206,
      "loc": {
        "start": {
          "line": 674,
          "column": 2
        },
        "end": {
          "line": 680,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "remove",
      "start": 25209,
      "end": 25215,
      "loc": {
        "start": {
          "line": 681,
          "column": 2
        },
        "end": {
          "line": 681,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25215,
      "end": 25216,
      "loc": {
        "start": {
          "line": 681,
          "column": 8
        },
        "end": {
          "line": 681,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 25216,
      "end": 25230,
      "loc": {
        "start": {
          "line": 681,
          "column": 9
        },
        "end": {
          "line": 681,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25230,
      "end": 25231,
      "loc": {
        "start": {
          "line": 681,
          "column": 23
        },
        "end": {
          "line": 681,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oldAssociatedObjects",
      "start": 25232,
      "end": 25252,
      "loc": {
        "start": {
          "line": 681,
          "column": 25
        },
        "end": {
          "line": 681,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25252,
      "end": 25253,
      "loc": {
        "start": {
          "line": 681,
          "column": 45
        },
        "end": {
          "line": 681,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 25254,
      "end": 25261,
      "loc": {
        "start": {
          "line": 681,
          "column": 47
        },
        "end": {
          "line": 681,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25261,
      "end": 25262,
      "loc": {
        "start": {
          "line": 681,
          "column": 54
        },
        "end": {
          "line": 681,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25263,
      "end": 25264,
      "loc": {
        "start": {
          "line": 681,
          "column": 56
        },
        "end": {
          "line": 681,
          "column": 57
        }
      }
    },
    {
      "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": 25269,
      "end": 25274,
      "loc": {
        "start": {
          "line": 682,
          "column": 4
        },
        "end": {
          "line": 682,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25275,
      "end": 25286,
      "loc": {
        "start": {
          "line": 682,
          "column": 10
        },
        "end": {
          "line": 682,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25287,
      "end": 25288,
      "loc": {
        "start": {
          "line": 682,
          "column": 22
        },
        "end": {
          "line": 682,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 25289,
      "end": 25293,
      "loc": {
        "start": {
          "line": 682,
          "column": 24
        },
        "end": {
          "line": 682,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25293,
      "end": 25294,
      "loc": {
        "start": {
          "line": 682,
          "column": 28
        },
        "end": {
          "line": 682,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 25300,
      "end": 25307,
      "loc": {
        "start": {
          "line": 684,
          "column": 4
        },
        "end": {
          "line": 684,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25308,
      "end": 25309,
      "loc": {
        "start": {
          "line": 684,
          "column": 12
        },
        "end": {
          "line": 684,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 25310,
      "end": 25317,
      "loc": {
        "start": {
          "line": 684,
          "column": 14
        },
        "end": {
          "line": 684,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 25318,
      "end": 25320,
      "loc": {
        "start": {
          "line": 684,
          "column": 22
        },
        "end": {
          "line": 684,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25321,
      "end": 25322,
      "loc": {
        "start": {
          "line": 684,
          "column": 25
        },
        "end": {
          "line": 684,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25322,
      "end": 25323,
      "loc": {
        "start": {
          "line": 684,
          "column": 26
        },
        "end": {
          "line": 684,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25323,
      "end": 25324,
      "loc": {
        "start": {
          "line": 684,
          "column": 27
        },
        "end": {
          "line": 684,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oldAssociatedObjects",
      "start": 25330,
      "end": 25350,
      "loc": {
        "start": {
          "line": 686,
          "column": 4
        },
        "end": {
          "line": 686,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25351,
      "end": 25352,
      "loc": {
        "start": {
          "line": 686,
          "column": 25
        },
        "end": {
          "line": 686,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25353,
      "end": 25364,
      "loc": {
        "start": {
          "line": 686,
          "column": 27
        },
        "end": {
          "line": 686,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25364,
      "end": 25365,
      "loc": {
        "start": {
          "line": 686,
          "column": 38
        },
        "end": {
          "line": 686,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "toInstanceArray",
      "start": 25365,
      "end": 25380,
      "loc": {
        "start": {
          "line": 686,
          "column": 39
        },
        "end": {
          "line": 686,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25380,
      "end": 25381,
      "loc": {
        "start": {
          "line": 686,
          "column": 54
        },
        "end": {
          "line": 686,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oldAssociatedObjects",
      "start": 25381,
      "end": 25401,
      "loc": {
        "start": {
          "line": 686,
          "column": 55
        },
        "end": {
          "line": 686,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25401,
      "end": 25402,
      "loc": {
        "start": {
          "line": 686,
          "column": 75
        },
        "end": {
          "line": 686,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25402,
      "end": 25403,
      "loc": {
        "start": {
          "line": 686,
          "column": 76
        },
        "end": {
          "line": 686,
          "column": 77
        }
      }
    },
    {
      "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": 25409,
      "end": 25414,
      "loc": {
        "start": {
          "line": 688,
          "column": 4
        },
        "end": {
          "line": 688,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 25415,
      "end": 25420,
      "loc": {
        "start": {
          "line": 688,
          "column": 10
        },
        "end": {
          "line": 688,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25421,
      "end": 25422,
      "loc": {
        "start": {
          "line": 688,
          "column": 16
        },
        "end": {
          "line": 688,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25423,
      "end": 25424,
      "loc": {
        "start": {
          "line": 688,
          "column": 18
        },
        "end": {
          "line": 688,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25424,
      "end": 25425,
      "loc": {
        "start": {
          "line": 688,
          "column": 19
        },
        "end": {
          "line": 688,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25425,
      "end": 25426,
      "loc": {
        "start": {
          "line": 688,
          "column": 20
        },
        "end": {
          "line": 688,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 25431,
      "end": 25436,
      "loc": {
        "start": {
          "line": 689,
          "column": 4
        },
        "end": {
          "line": 689,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25436,
      "end": 25437,
      "loc": {
        "start": {
          "line": 689,
          "column": 9
        },
        "end": {
          "line": 689,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25437,
      "end": 25448,
      "loc": {
        "start": {
          "line": 689,
          "column": 10
        },
        "end": {
          "line": 689,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25448,
      "end": 25449,
      "loc": {
        "start": {
          "line": 689,
          "column": 21
        },
        "end": {
          "line": 689,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "identifier",
      "start": 25449,
      "end": 25459,
      "loc": {
        "start": {
          "line": 689,
          "column": 22
        },
        "end": {
          "line": 689,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25459,
      "end": 25460,
      "loc": {
        "start": {
          "line": 689,
          "column": 32
        },
        "end": {
          "line": 689,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25461,
      "end": 25462,
      "loc": {
        "start": {
          "line": 689,
          "column": 34
        },
        "end": {
          "line": 689,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 25463,
      "end": 25477,
      "loc": {
        "start": {
          "line": 689,
          "column": 36
        },
        "end": {
          "line": 689,
          "column": 50
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25477,
      "end": 25478,
      "loc": {
        "start": {
          "line": 689,
          "column": 50
        },
        "end": {
          "line": 689,
          "column": 51
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 25478,
      "end": 25481,
      "loc": {
        "start": {
          "line": 689,
          "column": 51
        },
        "end": {
          "line": 689,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25481,
      "end": 25482,
      "loc": {
        "start": {
          "line": 689,
          "column": 54
        },
        "end": {
          "line": 689,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25482,
      "end": 25493,
      "loc": {
        "start": {
          "line": 689,
          "column": 55
        },
        "end": {
          "line": 689,
          "column": 66
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25493,
      "end": 25494,
      "loc": {
        "start": {
          "line": 689,
          "column": 66
        },
        "end": {
          "line": 689,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "source",
      "start": 25494,
      "end": 25500,
      "loc": {
        "start": {
          "line": 689,
          "column": 67
        },
        "end": {
          "line": 689,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25500,
      "end": 25501,
      "loc": {
        "start": {
          "line": 689,
          "column": 73
        },
        "end": {
          "line": 689,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 25501,
      "end": 25520,
      "loc": {
        "start": {
          "line": 689,
          "column": 74
        },
        "end": {
          "line": 689,
          "column": 93
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25520,
      "end": 25521,
      "loc": {
        "start": {
          "line": 689,
          "column": 93
        },
        "end": {
          "line": 689,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25521,
      "end": 25522,
      "loc": {
        "start": {
          "line": 689,
          "column": 94
        },
        "end": {
          "line": 689,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 25527,
      "end": 25532,
      "loc": {
        "start": {
          "line": 690,
          "column": 4
        },
        "end": {
          "line": 690,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25532,
      "end": 25533,
      "loc": {
        "start": {
          "line": 690,
          "column": 9
        },
        "end": {
          "line": 690,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25533,
      "end": 25544,
      "loc": {
        "start": {
          "line": 690,
          "column": 10
        },
        "end": {
          "line": 690,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25544,
      "end": 25545,
      "loc": {
        "start": {
          "line": 690,
          "column": 21
        },
        "end": {
          "line": 690,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "foreignIdentifier",
      "start": 25545,
      "end": 25562,
      "loc": {
        "start": {
          "line": 690,
          "column": 22
        },
        "end": {
          "line": 690,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25562,
      "end": 25563,
      "loc": {
        "start": {
          "line": 690,
          "column": 39
        },
        "end": {
          "line": 690,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 25564,
      "end": 25565,
      "loc": {
        "start": {
          "line": 690,
          "column": 41
        },
        "end": {
          "line": 690,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "oldAssociatedObjects",
      "start": 25566,
      "end": 25586,
      "loc": {
        "start": {
          "line": 690,
          "column": 43
        },
        "end": {
          "line": 690,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25586,
      "end": 25587,
      "loc": {
        "start": {
          "line": 690,
          "column": 63
        },
        "end": {
          "line": 690,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "map",
      "start": 25587,
      "end": 25590,
      "loc": {
        "start": {
          "line": 690,
          "column": 64
        },
        "end": {
          "line": 690,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25590,
      "end": 25591,
      "loc": {
        "start": {
          "line": 690,
          "column": 67
        },
        "end": {
          "line": 690,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstance",
      "start": 25591,
      "end": 25602,
      "loc": {
        "start": {
          "line": 690,
          "column": 68
        },
        "end": {
          "line": 690,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25603,
      "end": 25605,
      "loc": {
        "start": {
          "line": 690,
          "column": 80
        },
        "end": {
          "line": 690,
          "column": 82
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newInstance",
      "start": 25606,
      "end": 25617,
      "loc": {
        "start": {
          "line": 690,
          "column": 83
        },
        "end": {
          "line": 690,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25617,
      "end": 25618,
      "loc": {
        "start": {
          "line": 690,
          "column": 94
        },
        "end": {
          "line": 690,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "get",
      "start": 25618,
      "end": 25621,
      "loc": {
        "start": {
          "line": 690,
          "column": 95
        },
        "end": {
          "line": 690,
          "column": 98
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25621,
      "end": 25622,
      "loc": {
        "start": {
          "line": 690,
          "column": 98
        },
        "end": {
          "line": 690,
          "column": 99
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25622,
      "end": 25633,
      "loc": {
        "start": {
          "line": 690,
          "column": 99
        },
        "end": {
          "line": 690,
          "column": 110
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25633,
      "end": 25634,
      "loc": {
        "start": {
          "line": 690,
          "column": 110
        },
        "end": {
          "line": 690,
          "column": 111
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 25634,
      "end": 25640,
      "loc": {
        "start": {
          "line": 690,
          "column": 111
        },
        "end": {
          "line": 690,
          "column": 117
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25640,
      "end": 25641,
      "loc": {
        "start": {
          "line": 690,
          "column": 117
        },
        "end": {
          "line": 690,
          "column": 118
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "primaryKeyAttribute",
      "start": 25641,
      "end": 25660,
      "loc": {
        "start": {
          "line": 690,
          "column": 118
        },
        "end": {
          "line": 690,
          "column": 137
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25660,
      "end": 25661,
      "loc": {
        "start": {
          "line": 690,
          "column": 137
        },
        "end": {
          "line": 690,
          "column": 138
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25661,
      "end": 25662,
      "loc": {
        "start": {
          "line": 690,
          "column": 138
        },
        "end": {
          "line": 690,
          "column": 139
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25662,
      "end": 25663,
      "loc": {
        "start": {
          "line": 690,
          "column": 139
        },
        "end": {
          "line": 690,
          "column": 140
        }
      }
    },
    {
      "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": 25669,
      "end": 25675,
      "loc": {
        "start": {
          "line": 692,
          "column": 4
        },
        "end": {
          "line": 692,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 25676,
      "end": 25687,
      "loc": {
        "start": {
          "line": 692,
          "column": 11
        },
        "end": {
          "line": 692,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25687,
      "end": 25688,
      "loc": {
        "start": {
          "line": 692,
          "column": 22
        },
        "end": {
          "line": 692,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "through",
      "start": 25688,
      "end": 25695,
      "loc": {
        "start": {
          "line": 692,
          "column": 23
        },
        "end": {
          "line": 692,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25695,
      "end": 25696,
      "loc": {
        "start": {
          "line": 692,
          "column": 30
        },
        "end": {
          "line": 692,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "model",
      "start": 25696,
      "end": 25701,
      "loc": {
        "start": {
          "line": 692,
          "column": 31
        },
        "end": {
          "line": 692,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25701,
      "end": 25702,
      "loc": {
        "start": {
          "line": 692,
          "column": 36
        },
        "end": {
          "line": 692,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "destroy",
      "start": 25702,
      "end": 25709,
      "loc": {
        "start": {
          "line": 692,
          "column": 37
        },
        "end": {
          "line": 692,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25709,
      "end": 25710,
      "loc": {
        "start": {
          "line": 692,
          "column": 44
        },
        "end": {
          "line": 692,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 25710,
      "end": 25711,
      "loc": {
        "start": {
          "line": 692,
          "column": 45
        },
        "end": {
          "line": 692,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25711,
      "end": 25712,
      "loc": {
        "start": {
          "line": 692,
          "column": 46
        },
        "end": {
          "line": 692,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "defaults",
      "start": 25712,
      "end": 25720,
      "loc": {
        "start": {
          "line": 692,
          "column": 47
        },
        "end": {
          "line": 692,
          "column": 55
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25720,
      "end": 25721,
      "loc": {
        "start": {
          "line": 692,
          "column": 55
        },
        "end": {
          "line": 692,
          "column": 56
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25721,
      "end": 25722,
      "loc": {
        "start": {
          "line": 692,
          "column": 56
        },
        "end": {
          "line": 692,
          "column": 57
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "where",
      "start": 25722,
      "end": 25727,
      "loc": {
        "start": {
          "line": 692,
          "column": 57
        },
        "end": {
          "line": 692,
          "column": 62
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25727,
      "end": 25728,
      "loc": {
        "start": {
          "line": 692,
          "column": 62
        },
        "end": {
          "line": 692,
          "column": 63
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25728,
      "end": 25729,
      "loc": {
        "start": {
          "line": 692,
          "column": 63
        },
        "end": {
          "line": 692,
          "column": 64
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 25730,
      "end": 25737,
      "loc": {
        "start": {
          "line": 692,
          "column": 65
        },
        "end": {
          "line": 692,
          "column": 72
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25737,
      "end": 25738,
      "loc": {
        "start": {
          "line": 692,
          "column": 72
        },
        "end": {
          "line": 692,
          "column": 73
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25738,
      "end": 25739,
      "loc": {
        "start": {
          "line": 692,
          "column": 73
        },
        "end": {
          "line": 692,
          "column": 74
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 25739,
      "end": 25740,
      "loc": {
        "start": {
          "line": 692,
          "column": 74
        },
        "end": {
          "line": 692,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 25743,
      "end": 25744,
      "loc": {
        "start": {
          "line": 693,
          "column": 2
        },
        "end": {
          "line": 693,
          "column": 3
        }
      }
    },
    {
      "type": "CommentBlock",
      "value": "*\n   * Create a new instance of the associated model and associate it with this.\n   *\n   * @param {Object} [values]\n   * @param {Object} [options] Options passed to create and add\n   * @param {Object} [options.through] Additional attributes for the join table\n   * @return {Promise}\n   ",
      "start": 25748,
      "end": 26038,
      "loc": {
        "start": {
          "line": 695,
          "column": 2
        },
        "end": {
          "line": 702,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "create",
      "start": 26041,
      "end": 26047,
      "loc": {
        "start": {
          "line": 703,
          "column": 2
        },
        "end": {
          "line": 703,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26047,
      "end": 26048,
      "loc": {
        "start": {
          "line": 703,
          "column": 8
        },
        "end": {
          "line": 703,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 26048,
      "end": 26062,
      "loc": {
        "start": {
          "line": 703,
          "column": 9
        },
        "end": {
          "line": 703,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26062,
      "end": 26063,
      "loc": {
        "start": {
          "line": 703,
          "column": 23
        },
        "end": {
          "line": 703,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 26064,
      "end": 26070,
      "loc": {
        "start": {
          "line": 703,
          "column": 25
        },
        "end": {
          "line": 703,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26070,
      "end": 26071,
      "loc": {
        "start": {
          "line": 703,
          "column": 31
        },
        "end": {
          "line": 703,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26072,
      "end": 26079,
      "loc": {
        "start": {
          "line": 703,
          "column": 33
        },
        "end": {
          "line": 703,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26079,
      "end": 26080,
      "loc": {
        "start": {
          "line": 703,
          "column": 40
        },
        "end": {
          "line": 703,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26081,
      "end": 26082,
      "loc": {
        "start": {
          "line": 703,
          "column": 42
        },
        "end": {
          "line": 703,
          "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": 26087,
      "end": 26092,
      "loc": {
        "start": {
          "line": 704,
          "column": 4
        },
        "end": {
          "line": 704,
          "column": 9
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26093,
      "end": 26104,
      "loc": {
        "start": {
          "line": 704,
          "column": 10
        },
        "end": {
          "line": 704,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26105,
      "end": 26106,
      "loc": {
        "start": {
          "line": 704,
          "column": 22
        },
        "end": {
          "line": 704,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "this",
        "keyword": "this",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "this",
      "start": 26107,
      "end": 26111,
      "loc": {
        "start": {
          "line": 704,
          "column": 24
        },
        "end": {
          "line": 704,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26111,
      "end": 26112,
      "loc": {
        "start": {
          "line": 704,
          "column": 28
        },
        "end": {
          "line": 704,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26118,
      "end": 26125,
      "loc": {
        "start": {
          "line": 706,
          "column": 4
        },
        "end": {
          "line": 706,
          "column": 11
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26126,
      "end": 26127,
      "loc": {
        "start": {
          "line": 706,
          "column": 12
        },
        "end": {
          "line": 706,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26128,
      "end": 26135,
      "loc": {
        "start": {
          "line": 706,
          "column": 14
        },
        "end": {
          "line": 706,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 26136,
      "end": 26138,
      "loc": {
        "start": {
          "line": 706,
          "column": 22
        },
        "end": {
          "line": 706,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26139,
      "end": 26140,
      "loc": {
        "start": {
          "line": 706,
          "column": 25
        },
        "end": {
          "line": 706,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26140,
      "end": 26141,
      "loc": {
        "start": {
          "line": 706,
          "column": 26
        },
        "end": {
          "line": 706,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26141,
      "end": 26142,
      "loc": {
        "start": {
          "line": 706,
          "column": 27
        },
        "end": {
          "line": 706,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 26147,
      "end": 26153,
      "loc": {
        "start": {
          "line": 707,
          "column": 4
        },
        "end": {
          "line": 707,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26154,
      "end": 26155,
      "loc": {
        "start": {
          "line": 707,
          "column": 11
        },
        "end": {
          "line": 707,
          "column": 12
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 26156,
      "end": 26162,
      "loc": {
        "start": {
          "line": 707,
          "column": 13
        },
        "end": {
          "line": 707,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": "||",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": 1,
        "updateContext": null
      },
      "value": "||",
      "start": 26163,
      "end": 26165,
      "loc": {
        "start": {
          "line": 707,
          "column": 20
        },
        "end": {
          "line": 707,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26166,
      "end": 26167,
      "loc": {
        "start": {
          "line": 707,
          "column": 23
        },
        "end": {
          "line": 707,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26167,
      "end": 26168,
      "loc": {
        "start": {
          "line": 707,
          "column": 24
        },
        "end": {
          "line": 707,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26168,
      "end": 26169,
      "loc": {
        "start": {
          "line": 707,
          "column": 25
        },
        "end": {
          "line": 707,
          "column": 26
        }
      }
    },
    {
      "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": 26175,
      "end": 26177,
      "loc": {
        "start": {
          "line": 709,
          "column": 4
        },
        "end": {
          "line": 709,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26178,
      "end": 26179,
      "loc": {
        "start": {
          "line": 709,
          "column": 7
        },
        "end": {
          "line": 709,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Array",
      "start": 26179,
      "end": 26184,
      "loc": {
        "start": {
          "line": 709,
          "column": 8
        },
        "end": {
          "line": 709,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26184,
      "end": 26185,
      "loc": {
        "start": {
          "line": 709,
          "column": 13
        },
        "end": {
          "line": 709,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "isArray",
      "start": 26185,
      "end": 26192,
      "loc": {
        "start": {
          "line": 709,
          "column": 14
        },
        "end": {
          "line": 709,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26192,
      "end": 26193,
      "loc": {
        "start": {
          "line": 709,
          "column": 21
        },
        "end": {
          "line": 709,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26193,
      "end": 26200,
      "loc": {
        "start": {
          "line": 709,
          "column": 22
        },
        "end": {
          "line": 709,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26200,
      "end": 26201,
      "loc": {
        "start": {
          "line": 709,
          "column": 29
        },
        "end": {
          "line": 709,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26201,
      "end": 26202,
      "loc": {
        "start": {
          "line": 709,
          "column": 30
        },
        "end": {
          "line": 709,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26203,
      "end": 26204,
      "loc": {
        "start": {
          "line": 709,
          "column": 32
        },
        "end": {
          "line": 709,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26211,
      "end": 26218,
      "loc": {
        "start": {
          "line": 710,
          "column": 6
        },
        "end": {
          "line": 710,
          "column": 13
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26219,
      "end": 26220,
      "loc": {
        "start": {
          "line": 710,
          "column": 14
        },
        "end": {
          "line": 710,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26221,
      "end": 26222,
      "loc": {
        "start": {
          "line": 710,
          "column": 16
        },
        "end": {
          "line": 710,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fields",
      "start": 26231,
      "end": 26237,
      "loc": {
        "start": {
          "line": 711,
          "column": 8
        },
        "end": {
          "line": 711,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ":",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26237,
      "end": 26238,
      "loc": {
        "start": {
          "line": 711,
          "column": 14
        },
        "end": {
          "line": 711,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26239,
      "end": 26246,
      "loc": {
        "start": {
          "line": 711,
          "column": 16
        },
        "end": {
          "line": 711,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26253,
      "end": 26254,
      "loc": {
        "start": {
          "line": 712,
          "column": 6
        },
        "end": {
          "line": 712,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26254,
      "end": 26255,
      "loc": {
        "start": {
          "line": 712,
          "column": 7
        },
        "end": {
          "line": 712,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26260,
      "end": 26261,
      "loc": {
        "start": {
          "line": 713,
          "column": 4
        },
        "end": {
          "line": 713,
          "column": 5
        }
      }
    },
    {
      "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": 26267,
      "end": 26269,
      "loc": {
        "start": {
          "line": 715,
          "column": 4
        },
        "end": {
          "line": 715,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26270,
      "end": 26271,
      "loc": {
        "start": {
          "line": 715,
          "column": 7
        },
        "end": {
          "line": 715,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26271,
      "end": 26282,
      "loc": {
        "start": {
          "line": 715,
          "column": 8
        },
        "end": {
          "line": 715,
          "column": 19
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26282,
      "end": 26283,
      "loc": {
        "start": {
          "line": 715,
          "column": 19
        },
        "end": {
          "line": 715,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 26283,
      "end": 26288,
      "loc": {
        "start": {
          "line": 715,
          "column": 20
        },
        "end": {
          "line": 715,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26288,
      "end": 26289,
      "loc": {
        "start": {
          "line": 715,
          "column": 25
        },
        "end": {
          "line": 715,
          "column": 26
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26290,
      "end": 26291,
      "loc": {
        "start": {
          "line": 715,
          "column": 27
        },
        "end": {
          "line": 715,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 26298,
      "end": 26299,
      "loc": {
        "start": {
          "line": 716,
          "column": 6
        },
        "end": {
          "line": 716,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26299,
      "end": 26300,
      "loc": {
        "start": {
          "line": 716,
          "column": 7
        },
        "end": {
          "line": 716,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "assign",
      "start": 26300,
      "end": 26306,
      "loc": {
        "start": {
          "line": 716,
          "column": 8
        },
        "end": {
          "line": 716,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26306,
      "end": 26307,
      "loc": {
        "start": {
          "line": 716,
          "column": 14
        },
        "end": {
          "line": 716,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 26307,
      "end": 26313,
      "loc": {
        "start": {
          "line": 716,
          "column": 15
        },
        "end": {
          "line": 716,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26313,
      "end": 26314,
      "loc": {
        "start": {
          "line": 716,
          "column": 21
        },
        "end": {
          "line": 716,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26315,
      "end": 26326,
      "loc": {
        "start": {
          "line": 716,
          "column": 23
        },
        "end": {
          "line": 716,
          "column": 34
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26326,
      "end": 26327,
      "loc": {
        "start": {
          "line": 716,
          "column": 34
        },
        "end": {
          "line": 716,
          "column": 35
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 26327,
      "end": 26332,
      "loc": {
        "start": {
          "line": 716,
          "column": 35
        },
        "end": {
          "line": 716,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26332,
      "end": 26333,
      "loc": {
        "start": {
          "line": 716,
          "column": 40
        },
        "end": {
          "line": 716,
          "column": 41
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26333,
      "end": 26334,
      "loc": {
        "start": {
          "line": 716,
          "column": 41
        },
        "end": {
          "line": 716,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": "if",
        "keyword": "if",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "if",
      "start": 26341,
      "end": 26343,
      "loc": {
        "start": {
          "line": 717,
          "column": 6
        },
        "end": {
          "line": 717,
          "column": 8
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26344,
      "end": 26345,
      "loc": {
        "start": {
          "line": 717,
          "column": 9
        },
        "end": {
          "line": 717,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26345,
      "end": 26352,
      "loc": {
        "start": {
          "line": 717,
          "column": 10
        },
        "end": {
          "line": 717,
          "column": 17
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26352,
      "end": 26353,
      "loc": {
        "start": {
          "line": 717,
          "column": 17
        },
        "end": {
          "line": 717,
          "column": 18
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fields",
      "start": 26353,
      "end": 26359,
      "loc": {
        "start": {
          "line": 717,
          "column": 18
        },
        "end": {
          "line": 717,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26359,
      "end": 26360,
      "loc": {
        "start": {
          "line": 717,
          "column": 24
        },
        "end": {
          "line": 717,
          "column": 25
        }
      }
    },
    {
      "type": {
        "label": "{",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26361,
      "end": 26362,
      "loc": {
        "start": {
          "line": 717,
          "column": 26
        },
        "end": {
          "line": 717,
          "column": 27
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26371,
      "end": 26378,
      "loc": {
        "start": {
          "line": 718,
          "column": 8
        },
        "end": {
          "line": 718,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26378,
      "end": 26379,
      "loc": {
        "start": {
          "line": 718,
          "column": 15
        },
        "end": {
          "line": 718,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fields",
      "start": 26379,
      "end": 26385,
      "loc": {
        "start": {
          "line": 718,
          "column": 16
        },
        "end": {
          "line": 718,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26386,
      "end": 26387,
      "loc": {
        "start": {
          "line": 718,
          "column": 23
        },
        "end": {
          "line": 718,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26388,
      "end": 26395,
      "loc": {
        "start": {
          "line": 718,
          "column": 25
        },
        "end": {
          "line": 718,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26395,
      "end": 26396,
      "loc": {
        "start": {
          "line": 718,
          "column": 32
        },
        "end": {
          "line": 718,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "fields",
      "start": 26396,
      "end": 26402,
      "loc": {
        "start": {
          "line": 718,
          "column": 33
        },
        "end": {
          "line": 718,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26402,
      "end": 26403,
      "loc": {
        "start": {
          "line": 718,
          "column": 39
        },
        "end": {
          "line": 718,
          "column": 40
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "concat",
      "start": 26403,
      "end": 26409,
      "loc": {
        "start": {
          "line": 718,
          "column": 40
        },
        "end": {
          "line": 718,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26409,
      "end": 26410,
      "loc": {
        "start": {
          "line": 718,
          "column": 46
        },
        "end": {
          "line": 718,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "Object",
      "start": 26410,
      "end": 26416,
      "loc": {
        "start": {
          "line": 718,
          "column": 47
        },
        "end": {
          "line": 718,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26416,
      "end": 26417,
      "loc": {
        "start": {
          "line": 718,
          "column": 53
        },
        "end": {
          "line": 718,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "keys",
      "start": 26417,
      "end": 26421,
      "loc": {
        "start": {
          "line": 718,
          "column": 54
        },
        "end": {
          "line": 718,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26421,
      "end": 26422,
      "loc": {
        "start": {
          "line": 718,
          "column": 58
        },
        "end": {
          "line": 718,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26422,
      "end": 26433,
      "loc": {
        "start": {
          "line": 718,
          "column": 59
        },
        "end": {
          "line": 718,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26433,
      "end": 26434,
      "loc": {
        "start": {
          "line": 718,
          "column": 70
        },
        "end": {
          "line": 718,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "scope",
      "start": 26434,
      "end": 26439,
      "loc": {
        "start": {
          "line": 718,
          "column": 71
        },
        "end": {
          "line": 718,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26439,
      "end": 26440,
      "loc": {
        "start": {
          "line": 718,
          "column": 76
        },
        "end": {
          "line": 718,
          "column": 77
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26440,
      "end": 26441,
      "loc": {
        "start": {
          "line": 718,
          "column": 77
        },
        "end": {
          "line": 718,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26441,
      "end": 26442,
      "loc": {
        "start": {
          "line": 718,
          "column": 78
        },
        "end": {
          "line": 718,
          "column": 79
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26449,
      "end": 26450,
      "loc": {
        "start": {
          "line": 719,
          "column": 6
        },
        "end": {
          "line": 719,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26455,
      "end": 26456,
      "loc": {
        "start": {
          "line": 720,
          "column": 4
        },
        "end": {
          "line": 720,
          "column": 5
        }
      }
    },
    {
      "type": "CommentLine",
      "value": " Create the related model instance",
      "start": 26462,
      "end": 26498,
      "loc": {
        "start": {
          "line": 722,
          "column": 4
        },
        "end": {
          "line": 722,
          "column": 40
        }
      }
    },
    {
      "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": 26503,
      "end": 26509,
      "loc": {
        "start": {
          "line": 723,
          "column": 4
        },
        "end": {
          "line": 723,
          "column": 10
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26510,
      "end": 26521,
      "loc": {
        "start": {
          "line": 723,
          "column": 11
        },
        "end": {
          "line": 723,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26521,
      "end": 26522,
      "loc": {
        "start": {
          "line": 723,
          "column": 22
        },
        "end": {
          "line": 723,
          "column": 23
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "target",
      "start": 26522,
      "end": 26528,
      "loc": {
        "start": {
          "line": 723,
          "column": 23
        },
        "end": {
          "line": 723,
          "column": 29
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26528,
      "end": 26529,
      "loc": {
        "start": {
          "line": 723,
          "column": 29
        },
        "end": {
          "line": 723,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "create",
      "start": 26529,
      "end": 26535,
      "loc": {
        "start": {
          "line": 723,
          "column": 30
        },
        "end": {
          "line": 723,
          "column": 36
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26535,
      "end": 26536,
      "loc": {
        "start": {
          "line": 723,
          "column": 36
        },
        "end": {
          "line": 723,
          "column": 37
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "values",
      "start": 26536,
      "end": 26542,
      "loc": {
        "start": {
          "line": 723,
          "column": 37
        },
        "end": {
          "line": 723,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26542,
      "end": 26543,
      "loc": {
        "start": {
          "line": 723,
          "column": 43
        },
        "end": {
          "line": 723,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26544,
      "end": 26551,
      "loc": {
        "start": {
          "line": 723,
          "column": 45
        },
        "end": {
          "line": 723,
          "column": 52
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26551,
      "end": 26552,
      "loc": {
        "start": {
          "line": 723,
          "column": 52
        },
        "end": {
          "line": 723,
          "column": 53
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26552,
      "end": 26553,
      "loc": {
        "start": {
          "line": 723,
          "column": 53
        },
        "end": {
          "line": 723,
          "column": 54
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "then",
      "start": 26553,
      "end": 26557,
      "loc": {
        "start": {
          "line": 723,
          "column": 54
        },
        "end": {
          "line": 723,
          "column": 58
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26557,
      "end": 26558,
      "loc": {
        "start": {
          "line": 723,
          "column": 58
        },
        "end": {
          "line": 723,
          "column": 59
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObject",
      "start": 26558,
      "end": 26577,
      "loc": {
        "start": {
          "line": 723,
          "column": 59
        },
        "end": {
          "line": 723,
          "column": 78
        }
      }
    },
    {
      "type": {
        "label": "=>",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26578,
      "end": 26580,
      "loc": {
        "start": {
          "line": 723,
          "column": 79
        },
        "end": {
          "line": 723,
          "column": 81
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "sourceInstance",
      "start": 26587,
      "end": 26601,
      "loc": {
        "start": {
          "line": 724,
          "column": 6
        },
        "end": {
          "line": 724,
          "column": 20
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26601,
      "end": 26602,
      "loc": {
        "start": {
          "line": 724,
          "column": 20
        },
        "end": {
          "line": 724,
          "column": 21
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "association",
      "start": 26602,
      "end": 26613,
      "loc": {
        "start": {
          "line": 724,
          "column": 21
        },
        "end": {
          "line": 724,
          "column": 32
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26613,
      "end": 26614,
      "loc": {
        "start": {
          "line": 724,
          "column": 32
        },
        "end": {
          "line": 724,
          "column": 33
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "accessors",
      "start": 26614,
      "end": 26623,
      "loc": {
        "start": {
          "line": 724,
          "column": 33
        },
        "end": {
          "line": 724,
          "column": 42
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26623,
      "end": 26624,
      "loc": {
        "start": {
          "line": 724,
          "column": 42
        },
        "end": {
          "line": 724,
          "column": 43
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "add",
      "start": 26624,
      "end": 26627,
      "loc": {
        "start": {
          "line": 724,
          "column": 43
        },
        "end": {
          "line": 724,
          "column": 46
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26627,
      "end": 26628,
      "loc": {
        "start": {
          "line": 724,
          "column": 46
        },
        "end": {
          "line": 724,
          "column": 47
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26628,
      "end": 26629,
      "loc": {
        "start": {
          "line": 724,
          "column": 47
        },
        "end": {
          "line": 724,
          "column": 48
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObject",
      "start": 26629,
      "end": 26648,
      "loc": {
        "start": {
          "line": 724,
          "column": 48
        },
        "end": {
          "line": 724,
          "column": 67
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26648,
      "end": 26649,
      "loc": {
        "start": {
          "line": 724,
          "column": 67
        },
        "end": {
          "line": 724,
          "column": 68
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "_",
      "start": 26650,
      "end": 26651,
      "loc": {
        "start": {
          "line": 724,
          "column": 69
        },
        "end": {
          "line": 724,
          "column": 70
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26651,
      "end": 26652,
      "loc": {
        "start": {
          "line": 724,
          "column": 70
        },
        "end": {
          "line": 724,
          "column": 71
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "omit",
      "start": 26652,
      "end": 26656,
      "loc": {
        "start": {
          "line": 724,
          "column": 71
        },
        "end": {
          "line": 724,
          "column": 75
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26656,
      "end": 26657,
      "loc": {
        "start": {
          "line": 724,
          "column": 75
        },
        "end": {
          "line": 724,
          "column": 76
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "options",
      "start": 26657,
      "end": 26664,
      "loc": {
        "start": {
          "line": 724,
          "column": 76
        },
        "end": {
          "line": 724,
          "column": 83
        }
      }
    },
    {
      "type": {
        "label": ",",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26664,
      "end": 26665,
      "loc": {
        "start": {
          "line": 724,
          "column": 83
        },
        "end": {
          "line": 724,
          "column": 84
        }
      }
    },
    {
      "type": {
        "label": "[",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26666,
      "end": 26667,
      "loc": {
        "start": {
          "line": 724,
          "column": 85
        },
        "end": {
          "line": 724,
          "column": 86
        }
      }
    },
    {
      "type": {
        "label": "string",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "fields",
      "start": 26667,
      "end": 26675,
      "loc": {
        "start": {
          "line": 724,
          "column": 86
        },
        "end": {
          "line": 724,
          "column": 94
        }
      }
    },
    {
      "type": {
        "label": "]",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26675,
      "end": 26676,
      "loc": {
        "start": {
          "line": 724,
          "column": 94
        },
        "end": {
          "line": 724,
          "column": 95
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26676,
      "end": 26677,
      "loc": {
        "start": {
          "line": 724,
          "column": 95
        },
        "end": {
          "line": 724,
          "column": 96
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26677,
      "end": 26678,
      "loc": {
        "start": {
          "line": 724,
          "column": 96
        },
        "end": {
          "line": 724,
          "column": 97
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26678,
      "end": 26679,
      "loc": {
        "start": {
          "line": 724,
          "column": 97
        },
        "end": {
          "line": 724,
          "column": 98
        }
      }
    },
    {
      "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": 26679,
      "end": 26685,
      "loc": {
        "start": {
          "line": 724,
          "column": 98
        },
        "end": {
          "line": 724,
          "column": 104
        }
      }
    },
    {
      "type": {
        "label": "(",
        "beforeExpr": true,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26685,
      "end": 26686,
      "loc": {
        "start": {
          "line": 724,
          "column": 104
        },
        "end": {
          "line": 724,
          "column": 105
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "newAssociatedObject",
      "start": 26686,
      "end": 26705,
      "loc": {
        "start": {
          "line": 724,
          "column": 105
        },
        "end": {
          "line": 724,
          "column": 124
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26705,
      "end": 26706,
      "loc": {
        "start": {
          "line": 724,
          "column": 124
        },
        "end": {
          "line": 724,
          "column": 125
        }
      }
    },
    {
      "type": {
        "label": ")",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26711,
      "end": 26712,
      "loc": {
        "start": {
          "line": 725,
          "column": 4
        },
        "end": {
          "line": 725,
          "column": 5
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26712,
      "end": 26713,
      "loc": {
        "start": {
          "line": 725,
          "column": 5
        },
        "end": {
          "line": 725,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26716,
      "end": 26717,
      "loc": {
        "start": {
          "line": 726,
          "column": 2
        },
        "end": {
          "line": 726,
          "column": 3
        }
      }
    },
    {
      "type": {
        "label": "}",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "start": 26718,
      "end": 26719,
      "loc": {
        "start": {
          "line": 727,
          "column": 0
        },
        "end": {
          "line": 727,
          "column": 1
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "module",
      "start": 26721,
      "end": 26727,
      "loc": {
        "start": {
          "line": 729,
          "column": 0
        },
        "end": {
          "line": 729,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26727,
      "end": 26728,
      "loc": {
        "start": {
          "line": 729,
          "column": 6
        },
        "end": {
          "line": 729,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "exports",
      "start": 26728,
      "end": 26735,
      "loc": {
        "start": {
          "line": 729,
          "column": 7
        },
        "end": {
          "line": 729,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26736,
      "end": 26737,
      "loc": {
        "start": {
          "line": 729,
          "column": 15
        },
        "end": {
          "line": 729,
          "column": 16
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsToMany",
      "start": 26738,
      "end": 26751,
      "loc": {
        "start": {
          "line": 729,
          "column": 17
        },
        "end": {
          "line": 729,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26751,
      "end": 26752,
      "loc": {
        "start": {
          "line": 729,
          "column": 30
        },
        "end": {
          "line": 729,
          "column": 31
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "module",
      "start": 26753,
      "end": 26759,
      "loc": {
        "start": {
          "line": 730,
          "column": 0
        },
        "end": {
          "line": 730,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26759,
      "end": 26760,
      "loc": {
        "start": {
          "line": 730,
          "column": 6
        },
        "end": {
          "line": 730,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "exports",
      "start": 26760,
      "end": 26767,
      "loc": {
        "start": {
          "line": 730,
          "column": 7
        },
        "end": {
          "line": 730,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26767,
      "end": 26768,
      "loc": {
        "start": {
          "line": 730,
          "column": 14
        },
        "end": {
          "line": 730,
          "column": 15
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsToMany",
      "start": 26768,
      "end": 26781,
      "loc": {
        "start": {
          "line": 730,
          "column": 15
        },
        "end": {
          "line": 730,
          "column": 28
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26782,
      "end": 26783,
      "loc": {
        "start": {
          "line": 730,
          "column": 29
        },
        "end": {
          "line": 730,
          "column": 30
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsToMany",
      "start": 26784,
      "end": 26797,
      "loc": {
        "start": {
          "line": 730,
          "column": 31
        },
        "end": {
          "line": 730,
          "column": 44
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26797,
      "end": 26798,
      "loc": {
        "start": {
          "line": 730,
          "column": 44
        },
        "end": {
          "line": 730,
          "column": 45
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "module",
      "start": 26799,
      "end": 26805,
      "loc": {
        "start": {
          "line": 731,
          "column": 0
        },
        "end": {
          "line": 731,
          "column": 6
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26805,
      "end": 26806,
      "loc": {
        "start": {
          "line": 731,
          "column": 6
        },
        "end": {
          "line": 731,
          "column": 7
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "exports",
      "start": 26806,
      "end": 26813,
      "loc": {
        "start": {
          "line": 731,
          "column": 7
        },
        "end": {
          "line": 731,
          "column": 14
        }
      }
    },
    {
      "type": {
        "label": ".",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26813,
      "end": 26814,
      "loc": {
        "start": {
          "line": 731,
          "column": 14
        },
        "end": {
          "line": 731,
          "column": 15
        }
      }
    },
    {
      "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": 26814,
      "end": 26821,
      "loc": {
        "start": {
          "line": 731,
          "column": 15
        },
        "end": {
          "line": 731,
          "column": 22
        }
      }
    },
    {
      "type": {
        "label": "=",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": true,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "value": "=",
      "start": 26822,
      "end": 26823,
      "loc": {
        "start": {
          "line": 731,
          "column": 23
        },
        "end": {
          "line": 731,
          "column": 24
        }
      }
    },
    {
      "type": {
        "label": "name",
        "beforeExpr": false,
        "startsExpr": true,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null
      },
      "value": "BelongsToMany",
      "start": 26824,
      "end": 26837,
      "loc": {
        "start": {
          "line": 731,
          "column": 25
        },
        "end": {
          "line": 731,
          "column": 38
        }
      }
    },
    {
      "type": {
        "label": ";",
        "beforeExpr": true,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26837,
      "end": 26838,
      "loc": {
        "start": {
          "line": 731,
          "column": 38
        },
        "end": {
          "line": 731,
          "column": 39
        }
      }
    },
    {
      "type": {
        "label": "eof",
        "beforeExpr": false,
        "startsExpr": false,
        "rightAssociative": false,
        "isLoop": false,
        "isAssign": false,
        "prefix": false,
        "postfix": false,
        "binop": null,
        "updateContext": null
      },
      "start": 26839,
      "end": 26839,
      "loc": {
        "start": {
          "line": 732,
          "column": 0
        },
        "end": {
          "line": 732,
          "column": 0
        }
      }
    }
  ]
}